936b33cc80
CI / Generate TypeScript types (push) Successful in 18s
CI / Generate TypeScript types (pull_request) Successful in 9s
CI / Server unit tests (push) Successful in 21s
CI / Build client (push) Successful in 40s
CI / Server unit tests (pull_request) Successful in 21s
CI / Build server (pull_request) Successful in 24s
CI / Build server (push) Has been cancelled
CI / Playwright E2E tests (push) Has been cancelled
CI / Build and push Docker image (push) Has been cancelled
CI / Notify (push) Has been cancelled
CI / Build client (pull_request) Has been cancelled
CI / Playwright E2E tests (pull_request) Has been cancelled
CI / Build and push Docker image (pull_request) Has been cancelled
CI / Notify (pull_request) Has been cancelled
Nahrazuje /vecere novou stránkou /objednani. Místo jednoho OBJEDNAVAM bucketu umožňuje vytvářet více skupin, kde každá objednává z jiného obchodu. - Skupiny mají stavový automat: open → locked → ordered - Obchody spravuje admin heslem (ADMIN_PASSWORD env var) přes modal „Správa obchodů" - Při stavu ordered zakladatel generuje QR kódy platby (nový PayForGroupModal – volné částky bez menu) - PayForAllModal (oběd) upraven: plátce nyní vidí svůj vlastní díl jako informační řádek - Nové testy: stores.test.ts + groups.test.ts (36 testů)
54 lines
2.8 KiB
Bash
54 lines
2.8 KiB
Bash
# Secret pro podepisování JWT tokenů. Minimální délka 32 znaků.
|
|
# JWT_SECRET='CHANGE_ME'
|
|
|
|
# URL pro externí odhlášení, kam bude uživatel při odhlášení přesměrován pokud byl přihlášen pomocí Trusted Headers.
|
|
# LOGOUT_URL='https://auth.example.com/logout'
|
|
|
|
# Datové úložiště. Musí být 'json' nebo 'redis' (není case sensitive).
|
|
# json - Data jsou ukládána do JSON souboru. Pomalé (práce se souborem), ale vhodné pro vývoj (snadnější prohlížení dat).
|
|
# redis - Data jsou ukládána v Redis serveru. Dle potřeby může být nutné upravit REDIS_ proměnné viz dále.
|
|
# STORAGE='json'
|
|
|
|
# Hostname/IP Redis serveru, pokud je použit STORAGE='redis'. Výchozí hodnota je 'localhost'.
|
|
# REDIS_HOST='localhost'
|
|
# Port Redis serveru, pokud je použit STORAGE='redis', výchozí hodnota je 6379.
|
|
# REDIS_PORT=6379
|
|
|
|
# Zapne režim mockování obědových menu.
|
|
# Vhodné pro vývoj o víkendech, svátcích a dalších dnech, pro které podniky nenabízejí obědové menu.
|
|
# V tomto režimu vrací server vždy falešné datum (pracovní den) a pevně nadefinovanou, smyšlenou nabídku jídel.
|
|
# MOCK_DATA=true
|
|
|
|
# Určuje servery Gotify a příslušné klíče API.
|
|
# Formát je pole objektů, kde každý objekt obsahuje adresu serveru a pole klíčů API.
|
|
# To je užitečné pro odesílání upozornění na různé servery Gotify s různými klíči API.
|
|
# Struktura dat je ve formátu JSON a je uložena jako řetězec.
|
|
# GOTIFY_SERVERS_AND_KEYS='[{"server":"https://notification.server.eu", "api_keys":["key1", "key2"]},{"server":"https://notification.server2.eu", "api_keys":["key3", "key4"]}]'
|
|
|
|
#NTFY_HOST = "http://192.168.0.113:80"
|
|
#NTFY_USERNAME="username"
|
|
#NTFY_PASSWD="password"
|
|
|
|
# Zapne přihlašování pomocí důvěryhodných hlaviček (trusted headers). Výchozí hodnota je false.
|
|
# V případě zapnutí je nutno vyplnit také HTTP_REMOTE_TRUSTED_IPS.
|
|
# HTTP_REMOTE_USER_ENABLED=true
|
|
|
|
# Seznam IP adres nebo rozsahů oddělených čárkou, ze kterých budou akceptovány důvěryhodné hlavičky.
|
|
# HTTP_REMOTE_TRUSTED_IPS=127.0.0.1,192.168.1.0/24
|
|
|
|
# Název důvěryhodné hlavičky obsahující login uživatele. Výchozí hodnota je 'remote-user'.
|
|
# HTTP_REMOTE_USER_HEADER_NAME=remote-user
|
|
|
|
# VAPID klíče pro Web Push notifikace (připomínka výběru oběda).
|
|
# Vygenerovat pomocí: npx web-push generate-vapid-keys
|
|
# VAPID_PUBLIC_KEY=
|
|
# VAPID_PRIVATE_KEY=
|
|
# VAPID_SUBJECT=mailto:admin@example.com
|
|
|
|
# Heslo pro bypass rate limitu na endpointu /api/food/refresh (pro skripty/admin).
|
|
# Bez hesla může refresh volat každý přihlášený uživatel (podléhá rate limitu).
|
|
# REFRESH_BYPASS_PASSWORD=
|
|
|
|
# Admin heslo pro správu seznamu obchodů na stránce /objednani.
|
|
# Bez hesla nelze přidávat ani odebírat obchody ze seznamu (POST/DELETE na /api/stores vrátí 403).
|
|
# ADMIN_PASSWORD= |