Commit Graph

25 Commits

Author SHA1 Message Date
Erik Thiele
4974ad92df fix: Struktur der Willkommensseite bereinigen, Doku nachziehen
templates/customer.html:
- <div class="page"> wurde nie geschlossen. Ergaenzt, analog zu
  help.html.
- Der {% include "_footer.html" %} war zusaetzlich in ein eigenes
  <footer class="app-footer"> gewickelt, obwohl das Include dieses
  Element bereits vollstaendig mitbringt - es standen also zwei
  ineinander verschachtelte footer im Markup. Wrapper entfernt.
- Leeren <script>-Block entfernt.

Drei Stellen behaupteten noch, die Willkommensseite ginge in die
Lobby-Playlist:
- README.md: Abschnitt "Willkommensseite", dazu Zielscreens und
  "Anzeigen bis" beschrieben
- generate_welcome_page.py: Modul-Docstring
- templates/customer.html: Kommentarblock ueber dem Formular

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-02 12:54:02 +02:00
Erik Thiele
848bcf93ab feat: Willkommensseite auf mehreren Screens anzeigen
Die Willkommensseite ging bisher fest in die Lobby-Playlist. Welche
Screens Begruessungsschirme sind, ist aber eine Eigenschaft der
Installation und nicht des einzelnen Kundenbesuchs - deshalb ein Flag
pro Screen statt einer Auswahl bei jedem Vorgang.

- Neue Screen-Einstellung "welcome_enabled" (Checkbox im Tab
  Einstellungen). Die generierte welcome.html wird in jeden markierten
  Screen des Standorts geschrieben und dort an Position 0 gesetzt.
- welcome_target_screens() faellt nur auf "lobby" zurueck, wenn kein
  Screen des Standorts den Schluessel besitzt. Bestehende Standorte
  verhalten sich damit ohne Konfigurationsaufwand unveraendert.
- add_customer_to_playlists() (frueher add_customer_to_lobby_playlist)
  raeumt welcome.html aus allen Screens des Standorts und fuegt sie nur
  in den Zielscreens wieder ein. Ein abgewaehlter Screen bleibt so nicht
  mit einer alten Begruessung stehen.
- Eingefuegt wird ein Dict statt eines Strings, damit der Eintrag
  enabled und schedule tragen kann.
- Optionales "Anzeigen bis" im Formular: setzt eine Zeitsteuerung, die
  Seite verschwindet danach auf allen Screens von selbst.
- Das Formular zeigt die aktuellen Zielscreens an und meldet
  verstaendlich, wenn keiner markiert ist.
- screens.setdefault("lobby", {}) entfernt - das legte an Standorten
  ohne Lobby stillschweigend einen Screen an. Es werden nur noch
  vorhandene Screens bespielt.

Die Seite referenziert alle Bilder absolut (/static/..., /media/...),
ist also ortsunabhaengig; je Screen liegt eine identische Kopie.

README, AGENTS.md und die Hilfeseite nachgezogen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-02 12:26:22 +02:00
Erik Thiele
90baa6130f docs: Zeitsteuerung in README und Hilfeseite dokumentieren
README:
- Feature-Liste und Routen-Tabelle ergaenzt
  (POST /admin/<site>/update-playlist-item/<screen>)
- Neuer Abschnitt "Playlist-Eintraege" mit dem Dict-Format fuer URL- und
  Datei-Eintraege sowie dem schedule-Objekt: Felder, Beispiele und die
  Verhaltensregeln (nur Uhrzeit bei daily/weekly, days nur bei weekly,
  Fenster ueber Mitternacht gehoert zum Starttag, unlesbare Angaben
  blenden nicht aus, Aktiv-Zustand fliesst in den Playlist-Hash ein)
- Helper-Liste aktualisiert: playlist_item_enabled() gibt es nicht mehr,
  dafuer is_item_active(), _schedule_time(), _window_start_date(),
  _in_validity_range() und der Filter schedule_text()

Hilfeseite (/admin/help):
- Neuer Abschnitt "Zeitsteuerung" mit Modus-Tabelle, Beispielen und den
  Punkten, ueber die man sonst stolpert
- Playlist-Abschnitt: Edit-Button gilt jetzt fuer alle Eintragstypen,
  "Zeit"-Badge erklaert
- Priority-Abschnitt: Zeitsteuerung steht dort ebenfalls zur Verfuegung

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-29 19:52:58 +02:00
Erik Thiele
7870c889f8 README: OpenAI API-Key-Doku ergänzt 2026-07-22 13:16:20 +02:00
Erik Thiele
bf95b3173b Doku: Link-Icon für Passthrough-Status in Playlist-Zeile beschrieben 2026-07-10 17:46:52 +02:00
Erik Thiele
22104b54cd Query-Parameter-Passthrough per URL steuerbar (Checkbox im Edit-Modal), Standard aus, sichtbar via Link-Icon in Playlist
- Neue Config-Felder: passthrough_params (true/false) pro URL-Item
- Edit-Modal in admin.html + priority.html mit Checkbox
- Player checkt item.passthrough === true vor appendParams()
- Default: false (keine Parameter-Übergabe ohne Checkbox)
- Link-Icon (ti-link / ti-link-off) in Playlist-Zeile als Status-Indikator
- Doku: help.html, README.md, AGENTS.md
2026-07-10 17:44:57 +02:00
Erik Thiele
23a33955aa MFA: Trusted Device Feature — Gerät für X Tage merken, überspringt MFA
- User kann nach TOTP-Eingabe das Gerät für 1–30 Tage speichern
- Cookie mfa_trust mit zufälligem Token, gespeichert in trusted_devices[]
- Nächstes POST /login: Cookie prüfen → gültiges Token → MFA überspringen
- Abgelaufene Einträge werden beim Login automatisch bereinigt
- Logout + MFA-Deaktivierung löschen Cookie + trusted_devices
- mfa_verify.html: checkbox + days-select (1/3/7/14/30 Tage)
2026-07-10 15:27:17 +02:00
Erik Thiele
317f2a6eb2 Doku: README, AGENTS und Hilfeseite aktualisiert
- README: Willkommensseite-Sektion mit Ansprechpartner/Markdown/Layout
- AGENTS: generate_welcome_html Signatur + Verhalten dokumentiert
- help.html: Ansprechpartner-Felder, Markdown-Hilfe, Portrait-Layout
2026-07-04 10:34:11 +02:00
Erik Thiele
cdcf2f50c6 Doku aktualisiert 2026-06-30 19:01:15 +02:00
Erik Thiele
297b52e50c Info Tab und MFA 2026-06-28 15:14:06 +02:00
Erik Thiele
1243910d4b Ergänzung Active Button 2026-06-26 15:10:38 +02:00
Erik Thiele
e83d24a3c3 README: Docker-Setup mit Bind-Mounts und chown-Anleitung 2026-06-21 17:27:17 +02:00
Erik Thiele
3eb5cf9d8d neues dockerfile mit gunicorn Server 2026-06-20 16:49:48 +02:00
Erik Thiele
e18414ab79 Admin Dashboard und Hilfeseite 2026-06-20 16:40:02 +02:00
Erik Thiele
ab1a36dee1 Doku ergänzt 2026-06-20 15:05:43 +02:00
Erik Thiele
35e22718e3 Positionen Action Button und DVA Button hinzugefügt 2026-06-19 12:09:50 +02:00
Erik Thiele
0e192a615d Hilfetexte ergänzt 2026-06-07 12:35:10 +02:00
Erik Thiele
0efc5bb346 Tabs in der Admin UI 2026-06-07 12:27:19 +02:00
Erik Thiele
4b29d9a27f Standort löschen hinzugefügt 2026-06-05 14:01:05 +02:00
Erik Thiele
d7bebf1226 Standortauswahl und Multi Logo und Action Button 2026-06-05 12:55:01 +02:00
Erik Thiele
a1b48e35d6 Checkbox für Playliste hinzugefügt 2026-05-10 13:49:05 +02:00
Erik Thiele
5ac9dee8fc Version 2.0.0 2026-04-22 20:26:00 +02:00
Erik Thiele
6faf207246 neue Readme 2026-04-17 14:13:53 +02:00
Erik Thiele
97f047497a Readme erzeugt 2026-04-17 14:09:11 +02:00
Erik Thiele
bd99563892 first commit 2026-04-17 14:05:43 +02:00