# TODO
- [ ] HTTP_REMOTE_TRUSTED_IPS se nikde nevalidují, hlavičky jsou přijímány odkudkoli
- [ ] V případě zapnutí přihlašování přes trusted headers nefunguje standardní přihlášení (nevrátí žádnou odpověď)
  - [ ] Nemělo by se jít dostat na přihlašovací formulář (měla by tam být nanejvýš hláška nebo přesměrování) 
- [ ] Možnost úhrady celé útraty jednou osobou
  - Základní myšlenka: jedna osoba uhradí celou útratu (v zájmu rychlosti odbavení), ostatním se automaticky vygeneruje QR kód, kterým následně uhradí svoji část útraty
  - Obecně to bude problém např. pokud si někdo objedná něco navíc (pití apod.)
  - [ ] Tlačítko "Uhradit" u každého řádku podniku - platí ten, kdo kliknul
    - [ ] Zobrazeno bude pouze, pokud má daný uživatel nastaveno číslo účtu
  - [ ] Dialog pro zadání spropitného, které se následně rozpočte rovnoměrně všem strávníkům
  - [ ] Generování a zobrazení QR kódů ostatním strávníkům
  - [ ] Umožnit u každého strávníka připočíst vlastní částku (např. za pití)
  - [ ] Umožnit (např. zaškrtávátky) vybrat, za koho bude zaplaceno (pokud někdo bude platit zvlášť)
- [ ] Podpora pro notifikace v externích systémech (Gotify, Discord, MS Teams)
  - [ ] Umožnit zadat URL/tokeny uživatelem
  - [ ] Umožnit uživatelsky konfigurovat typy notifikací, které se budou odesílat
  - [ ] Zavést notifikace typu "Jdeme na oběd"
    - [ ] Notifikaci dostanou pouze uživatelé, kteří mají vybranou stejnou lokalitu
- [ ] Vylepšit parsery restaurací
    - [ ] Sladovnická
    - [ ] Zbytečná prvotní validace indexu, datum konkrétního dne je i v samotné tabulce s jídly, viz TODO v parseru
  - [ ] U Motlíků
    - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (např. '12.6.-16.6.')
    - [ ] Jídelní lístek se stahuje jednou každý den, teoreticky by stačilo jednou týdně (za předpokladu, že se během týdne nemění)
  - [ ] TechTower
    - [ ] Validovat, že vstupní datum je zahrnuto v rozsahu uvedeném nad tabulkou (typicky 'Obědy 12. 6. - 16. 6. 2023 (každý den vždy i obědový  bufet)')
    - [ ] Jídelní lístek se stahuje v rámci prvního požadavku daný den, ale často se jídelní lístek na stránkách aktualizuje až v průběhu pondělního dopoledne a ten zobrazený je proto neaktuální
      - Stránka neposílá hlavičku o času poslední modifikace, takže o to se nelze opřít
      - Nevím aktuálně jak řešit jinak, než častějším scrapováním celé stránky
  - [X] Někdy jsou v názvech jídel přebytečné mezery kolem čárek ( , )
- [ ] Nasazení nové verze v Docker smaže veškerá data (protože data.json není vystrčený ven z kontejneru)
  - [ ] Zavést složku /data
- [ ] Mazat z databáze data z minulosti, aktuálně je to k ničemu
- [ ] Skripty pro snadné spuštění vývoje na Windows (ekvivalent ./run_dev.sh)
- [ ] Implementovat Pizza day
  - [ ] Zobrazit upozornění před smazáním/zamknutím/odemknutím pizza day
  - [ ] Pizzy se samy budou při naklikání přidávat do košíku
    - [ ] Nutno nejprve vyřešit předávání PHPSESSIONID cookie na pizzachefie.cz pomocí fetch()
  - [ ] Ceny krabic za pizzu jsou napevno v kódu - problém, pokud se někdy změní
  - [X] Umožnit u Pizza day ručně připočíst cenu za přísady
  - [X] Prvotní načtení pizz při založení Pizza Day trvá a nic se během toho nezobrazuje (např. loader)
  - [X] Po doručení zobrazit komu zaplatit (kdo objednával)
  - [x] Zbytečně nescrapovat každý den pizzy z Pizza Chefie, dokud není založen Pizza Day
  - [x] Umožnit uzamčení objednávek zakladatelem
  - [x] Možnost uložení čísla účtu
  - [x] Automatické generování a zobrazení QR kódů
    - [x] https://qr-platba.cz/pro-vyvojare/restful-api/
  - [x] Zobrazovat celkovou cenu objednávky pod tabulkou objednávek
  - [x] Umožnit přidat k objednávce poznámku (např. "bez oliv")
  - [x] Negenerovat QR kód pro objednávajícího
- [X] Možnost náhledu na ostatní dny v týdnu (např. pomocí šipek)
  - [X] Možnost výběru oběda na následující dny v týdnu
- [X] Umožnit vybrat libovolný čas odchodu
- [X] Validace zadání smysluplného času (ideálně i klientská)
- [x] Umožnit smazání aktuální volby "popelnicí", místo nutnosti vybrat prázdnou položku v selectu
- [x] Přívětivější možnost odhlašování
- [x] Vyřešit responzivní design pro použití na mobilu
- [x] Vyndat URL na Food API do .env
- [x] Neselhat při nedostupnosti nebo chybě z Food API
- [x] Dokončit docker-compose pro kompletní funkčnost
- [x] Vylepšit dokumentaci projektu
  - [x] Popsat závislosti, co je nutné provést před vývojem a postup spuštění pro vývoj
  - [x] Popsat dostupné env
- [x] Přesunout autentizaci na server (JWT?)
- [x] Zavést .env.template a přidat .env do .gitignore
- [x] Zkrášlit dialog pro vyplnění čísla účtu, vypadá mizerně
- [x] Zbavit se Food API, potřebnou funkcionalitu zahrnout do serveru
- [x] Vyřešit API mezi serverem a klientem, aby nebyl v obou projektech duplicitní kód (viz types.ts a Types.tsx)
- [X] Vybraná jídla strávníků zobrazovat v samostatném sloupci
- [X] Umožnit výběr/zadání preferovaného času odchodu na oběd
  - Hodí se např. pokud má někdo schůzky
- [X] Ukládat dostupné pizzy do DB místo souborů
- [X] Ukládat jídla do DB místo souborů