{ "appName": "Infoscreen-Management", "version": "2026.1.0-alpha.16", "copyright": "© 2026 Third-Age-Applications", "supportContact": "support@third-age-applications.com", "description": "Eine zentrale Verwaltungsoberfläche für digitale Informationsbildschirme.", "techStack": { "Frontend": "React, Vite, TypeScript, Syncfusion UI Components (Material 3)", "Backend": "Python (Flask), SQLAlchemy", "Database": "MariaDB", "Realtime": "Mosquitto (MQTT)", "Containerization": "Docker" }, "openSourceComponents": { "frontend": [ { "name": "React", "license": "MIT" }, { "name": "Vite", "license": "MIT" }, { "name": "Lucide Icons", "license": "ISC" }, { "name": "Syncfusion UI Components", "license": "Kommerziell / Community" } ], "backend": [ { "name": "Flask", "license": "BSD" }, { "name": "SQLAlchemy", "license": "MIT" }, { "name": "Paho-MQTT", "license": "EPL/EDL" }, { "name": "Alembic", "license": "MIT" } ] }, "changelog": [ { "version": "2026.1.0-alpha.16", "date": "2026-04-02", "changes": [ "✅ Dashboard: Der Ferienstatus-Banner zeigt die aktive akademische Periode jetzt zuverlässig nach Hard-Refresh und beim Wechsel zwischen Dashboard und Einstellungen.", "🧭 Navigation: Der Link vom Ferienstatus-Banner zu den Einstellungen bleibt stabil und funktioniert konsistent für Admin-Rollen.", "🚀 Deployment: Akademische Perioden werden nach Initialisierung automatisch für das aktuelle Datum aktiviert (kein manueller Aktivierungsschritt direkt nach Rollout mehr nötig).", "🔤 Sprache: Mehrere deutsche UI-Texte im Dashboard wurden auf korrekte Umlaute umgestellt (zum Beispiel für, prüfen, Vorfälle und Ausfälle)." ] }, { "version": "2026.1.0-alpha.15", "date": "2026-03-31", "changes": [ "✨ Einstellungen: Ferienverwaltung pro akademischer Periode verbessert (Import/Anzeige an ausgewählte Periode gebunden).", "➕ Ferienkalender: Manuelle Ferienpflege mit Erstellen, Bearbeiten und Löschen direkt im gleichen Bereich.", "✅ Validierung: Ferien-Datumsbereiche werden bei Import und manueller Erfassung gegen die gewählte Periode geprüft.", "🧠 Ferienlogik: Doppelte Einträge werden verhindert; identische Überschneidungen (Name+Region) werden automatisch zusammengeführt.", "⚠️ Import: Konfliktfälle bei überlappenden, unterschiedlichen Feiertags-Identitäten werden übersichtlich ausgewiesen.", "🎯 UX: Dateiauswahl im Ferien-Import zeigt den gewählten Dateinamen zuverlässig an.", "🎨 UI: Ferien-Tab und Dialoge an die definierten Syncfusion-Designregeln angeglichen." ] }, { "version": "2026.1.0-alpha.14", "date": "2026-01-28", "changes": [ "✨ UI: Neue 'Ressourcen'-Seite mit Timeline-Ansicht zeigt aktive Events für alle Raumgruppen parallel.", "📊 Ressourcen: Kompakte Zeitachsen-Darstellung.", "🎯 Ressourcen: Zeigt aktuell laufende Events mit Typ, Titel und Zeitfenster in Echtzeit.", "🔄 Ressourcen: Gruppensortierung anpassbar mit visueller Reihenfolgen-Verwaltung.", "🎨 Ressourcen: Farbcodierte Event-Balken entsprechend dem Gruppen-Theme." ] }, { "version": "2025.1.0-alpha.13", "date": "2025-12-29", "changes": [ "👥 UI: Neue 'Benutzer'-Seite mit vollständiger Benutzerverwaltung (CRUD) für Admins und Superadmins.", "🔐 Benutzer-Seite: Sortierbare Gitter-Tabelle mit Benutzer-ID, Benutzername und Rolle; 20 Einträge pro Seite.", "📊 Benutzer-Seite: Statistik-Karten zeigen Gesamtanzahl, aktive und inaktive Benutzer.", "➕ Benutzer-Seite: Dialog zum Erstellen neuer Benutzer (Benutzername, Passwort, Rolle, Status).", "✏️ Benutzer-Seite: Dialog zum Bearbeiten von Benutzer-Details mit Schutz vor Selbst-Änderungen.", "🔑 Benutzer-Seite: Dialog zum Zurücksetzen von Passwörtern durch Admins (ohne alte Passwort-Anfrage).", "❌ Benutzer-Seite: Dialog zum Löschen von Benutzern (nur für Superadmins; verhindert Selbst-Löschung).", "📋 Benutzer-Seite: Details-Modal zeigt Audit-Informationen (letzte Anmeldung, Passwort-Änderung, Abmeldungen).", "🎨 Benutzer-Seite: Rollen-Abzeichen mit Farb-Kodierung (Benutzer: grau, Editor: blau, Admin: grün, Superadmin: rot).", "🔒 Header-Menü: Neue 'Passwort ändern'-Option im Benutzer-Dropdown für Selbstbedienung (alle Benutzer).", "🔐 Passwort-Dialog: Authentifizierung mit aktuellem Passwort erforderlich (min. 6 Zeichen für neues Passwort).", "🎯 Rollenbasiert: Menu-Einträge werden basierend auf Benutzer-Rolle gefiltert (z.B. 'Benutzer' nur für Admin+)." ] }, { "version": "2025.1.0-alpha.12", "date": "2025-11-27", "changes": [ "✨ Dashboard: Komplett überarbeitetes Dashboard mit Karten-Design für alle Raumgruppen.", "📊 Dashboard: Globale Statistik-Übersicht zeigt Gesamt-Infoscreens, Online/Offline-Anzahl und Warnungen.", "🔍 Dashboard: Filter-Buttons (Alle, Online, Offline, Warnungen) mit dynamischen Zählern.", "🎯 Dashboard: Anzeige des aktuell laufenden Events pro Gruppe (Titel, Typ, Datum, Uhrzeit in lokaler Zeitzone).", "📈 Dashboard: Farbcodierte Health-Bars zeigen Online/Offline-Verhältnis je Gruppe.", "👥 Dashboard: Ausklappbare Client-Details mit 'Zeit seit letztem Lebenszeichen' (z.B. 'vor 5 Min.').", "🔄 Dashboard: Sammel-Neustart-Funktion für alle offline Clients einer Gruppe.", "⏱️ Dashboard: Auto-Aktualisierung alle 15 Sekunden; manueller Aktualisierungs-Button verfügbar." ] }, { "version": "2025.1.0-alpha.11", "date": "2025-11-05", "changes": [ "🎬 Client: Clients können jetzt Video-Events aus dem Terminplaner abspielen (Streaming mit Seek via Byte-Range).", "🧭 Einstellungen: Neues verschachteltes Tab-Layout mit kontrollierter Tab-Auswahl (keine Sprünge in Unter-Tabs).", "📅 Einstellungen › Akademischer Kalender: ‘Schulferien Import’ und ‘Liste’ zusammengeführt in ‘📥 Import & Liste’.", "🗓️ Events-Modal: Video-Optionen erweitert (Autoplay, Loop, Lautstärke, Ton aus). Werte werden bei neuen Terminen aus System-Defaults initialisiert.", "⚙️ Einstellungen › Events › Videos: Globale Defaults für Autoplay, Loop, Lautstärke und Mute (Keys: video_autoplay, video_loop, video_volume, video_muted)." ] }, { "version": "2025.1.0-alpha.10", "date": "2025-10-25", "changes": [ "🎬 Client: Client kann jetzt Videos wiedergeben (Playback/UI surface) — Benutzerseitige Präsentation wurde ergänzt.", "🧩 UI: Event-Modal ergänzt um Video-Auswahl und Wiedergabe-Optionen (Autoplay, Loop, Lautstärke).", "📁 Medien-UI: FileManager erlaubt größere Uploads für Full-HD-Videos; Client-seitige Validierung begrenzt Videolänge auf 10 Minuten." ] }, { "version": "2025.1.0-alpha.9", "date": "2025-10-19", "changes": [ "🆕 Events: Darstellung für ‘WebUntis’ harmonisiert mit ‘Website’ (UI/representation).", "🛠️ Einstellungen › Events: WebUntis verwendet jetzt die bestehende Supplement-Table-Einstellung (Settings UI updated)." ] }, { "version": "2025.1.0-alpha.8", "date": "2025-10-18", "changes": [ "✨ Einstellungen › Events › Präsentationen: Neue UI-Felder für Slide-Show Intervall, Page-Progress und Auto-Progress.", "️ UI: Event-Modal lädt Präsentations-Einstellungen aus Global-Defaults bzw. Event-Daten (behaviour surfaced in UI)." ] }, { "version": "2025.1.0-alpha.7", "date": "2025-10-16", "changes": [ "✨ Einstellungen-Seite: Neues Tab-Layout (Syncfusion) mit rollenbasierter Sichtbarkeit.", "🗓️ Einstellungen › Events: WebUntis/Vertretungsplan in Events-Tab (enable/preview in UI).", "📅 UI: Akademische Periode kann in der Einstellungen-Seite direkt gesetzt werden." ] }, { "version": "2025.1.0-alpha.6", "date": "2025-10-15", "changes": [ "✨ UI: Benutzer-Menü (top-right) mit Name/Rolle und Einträgen 'Profil' und 'Abmelden'." ] }, { "version": "2025.1.0-alpha.5", "date": "2025-10-14", "changes": [ "✨ UI: Einheitlicher Lösch-Workflow für Termine mit benutzerfreundlichen Dialogen (Einzeltermin, Einzelinstanz, Serie).", "🔧 Frontend: RecurrenceAlert/DeleteAlert werden abgefangen und durch eigene Dialoge ersetzt (Verbesserung der UX).", "✅ Bugfix (UX): Keine doppelten oder verwirrenden Bestätigungsdialoge mehr beim Löschen von Serienterminen." ] }, { "version": "2025.1.0-alpha.4", "date": "2025-10-11", "changes": [ "🎨 Theme: Umstellung auf Syncfusion Material 3; zentrale CSS-Imports (UI theme update).", "🧩 UI: Gruppenverwaltung ('infoscreen_groups') auf Syncfusion-Komponenten umgestellt.", "🔔 UI: Vereinheitlichte Notifications / Toast-Texte für konsistente UX." ] }, { "version": "2025.1.0-alpha.3", "date": "2025-09-21", "changes": [ "🧭 UI: Periode-Auswahl (Syncfusion) neben Gruppenauswahl; kompakte Layout-Verbesserung.", "✅ Anzeige: Abzeichen für vorhandenen Ferienplan + 'Ferien im Blick' Zähler (UI indicator).", "📤 UI: Ferien-Upload (TXT/CSV) Benutzer-Workflow ergänzt." ] }, { "version": "2025.1.0-alpha.2", "date": "2025-09-01", "changes": [ "UI Fix: Fehler beim Umschalten der Ansicht auf der Medien-Seite behoben." ] }, { "version": "2025.1.0-alpha.1", "date": "2025-08-30", "changes": [ "🆕 UI: Programminfo-Seite mit dynamischen Daten, Build-Infos und Changelog.", "✨ UI: Logout-Funktionalität (Frontend) implementiert.", "🐛 UI Fix: Breite der Sidebar im eingeklappten Zustand korrigiert." ] } ] }