Closed zrwsk closed 8 years ago
Wybór spreadsheetów będzie zahardcode'owany w źródle, plus opcja do wybrania własnego, customowego (jakiś input tekstowy). Choć w sumie to chyba lepiej by było mieć jakiś dodatkowy spreadsheet z listą spreadsheetów, które mają być do wyboru w appce.
Config trzymamy w spreadsheetach, żeby w czasie zawodów, obsługa miała możliwość zmodyfikowania go. Nie chcemy, żeby trzeba było modyfikować kod i commitować zmiany. Obsługa nie musi umieć tego robić. Poza tym, lepiej mieć jeden sposób podawania danych do appki. W tym przypadku, wszystko idzie przez spreadsheet.
Ale właśnie tak jak teraz mamy to wymaga dłubania w kodzie. Dostajemy ten obiekt configu który ma: sheetPractice - Array sheetRace - Stringa
I w tej linijce którą wrzuciłem wyżej wybieramy arkusz w kodzie!
Trzeba znaleźć jakieś dobre rozwiązanie na to. Nie wiem czy to powinien być jakiś pre-site, z prostym selectem arkuszy, czy pop-up, trzeba by się nad tym zastanowić.
A samą listę arkuszy wydaje mi się, że można by trzymać w jakimś pliku tekstowym nawet, ale to zabawa na dłużej, bo trzeba by backendy robić.
Aaaa, o to Ci chodzi. No tak, to oczywiście musimy zmienić i zmienimy. Zobacz sobie issuesy #3, #4, #8 i #9. Ma być pre-site z wyborem jednego z configów. Configi będą mogły być zahardcode'owane w aplikacji, ale będą też mogły być doczytane z np. dodatkowego spreadsheeta z listą configów i dodane do tablicy configów w aplikacji.
Ale to dopiero po pierwszym milestone'ie. Do bety wystarczy nam jeden zahardcode'owany w aplikacji token shpreadsheeta z configiem. Tylko póki jeszcze nie będzie pre-site'a, trzeba będzie jeszcze jakoś przekazać aplikacji decyzję o tym, którą część trackdaya ma w danym momencie pokazywać: practice czy race. Może też dodamy takie pole do spreadsheeta z configiem? Coś w stylu defaultLayout.
Natomiast sheetRace też ma być tablicą.
Myślę, że wybór arkusza w jakiejś komórce spreadsheeta przed II rundą jest jedynym słusznym rozwiązaniem.
Potem jednak myślałbym nad kawałkiem jakiegoś backend'u.
Ja też zostawiłbym #8 i #9 na później, ale wydaje mi się, że to będzie krótka piłka przy okazji robienia #4. I tak w jakiś sposób trzeba zrobić ładowanie wielu arkuszy na raz, synchronizację pobierania i merge'owanie wyników z różnych spreadsheetów. Żeby to się nie rozrosło i pokomplikowało w jednej klasie Spreadsheet, lepiej będzie to zrobić od razu w uporządkowany sposób.
@jar5551 powiedział, że zajmie się tym dzisiaj, albo jutro.
https://github.com/MX-5ClubPoland/MMCLapTimer/blob/master/assets/scripts/main.js#L126
_this.getJSON(_this.config.sheetPractice[0])
Sheet z danymi będzie wybierany przez zmiany w kodzie?I w sumie czemu trzymamy config w spreadsheet'ach? Nie łatwiej byłoby to trzymać po prostu w jsonie? (jeden interwał mniej ;))