{ "appName": "Infoscreen-Management", "version": "2025.1.0-alpha.13", "copyright": "© 2025 Third-Age-Applications", "supportContact": "support@third-age-applications.com", "description": "Eine zentrale Verwaltungsoberfläche für digitale Informationsbildschirme.", "techStack": { "Frontend": "React, Vite, TypeScript", "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" } ] }, "buildInfo": { "buildDate": "2025-10-19T12:00:00Z", "commitId": "9f2ae8b44c3a" }, "changelog": [ { "version": "2025.1.0-alpha.13", "date": "2025-10-19", "changes": [ "🆕 Events: Neuer Termin-Typ ‘WebUntis’ – nutzt die systemweite Vertretungsplan-URL; Darstellung ident mit ‘Website’.", "🛠️ Scheduler/Clients: Einheitliches Website-Payload für ‘Website’ und ‘WebUntis’ (type: browser, url).", "🛠️ Einstellungen › Events: WebUntis verwendet jetzt die bestehende Vertretungsplan-URL (Supplement-Table); kein separates WebUntis-URL-Feld mehr.", "📖 Doku: MQTT-Event-Payload-Leitfaden und Implementierungsnotizen zu WebUntis/Website ergänzt." ] }, { "version": "2025.1.0-alpha.12", "date": "2025-10-18", "changes": [ "✨ Einstellungen › Events › Präsentationen: Neue Felder für Slide-Show Intervall, Seitenfortschritt (Page-Progress) und Präsentationsfortschritt (Auto-Progress) – inspiriert von Impressive Presenter (-q, -k).", "️ Event-Modal: Präsentations-Einstellungen werden beim Erstellen aus globalen Defaults geladen; beim Bearbeiten aus Event-Daten; individuell pro Event anpassbar.", "🐛 Bugfix: Scheduler sendet jetzt leere retained Messages (`[]`) wenn keine Events mehr aktiv sind (Client-Display wird korrekt gelöscht).", "🔧 Bugfix: Nur aktuell aktive Events werden via MQTT an Clients gesendet (reduziert Datenübertragung).", "📖 Doku: Copilot-Instructions um Präsentations-Settings, Scheduler-Logik und Event-Modal erweitert." ] }, { "version": "2025.1.0-alpha.11", "date": "2025-10-16", "changes": [ "✨ Einstellungen-Seite: Neues Tab-Layout (Syncfusion) mit rollenbasierter Sichtbarkeit – Tabs: 📅 Akademischer Kalender, 🖥️ Anzeige & Clients, 🎬 Medien & Dateien, 🗓️ Events, ⚙️ System.", "🗓️ Einstellungen › Events: WebUntis/Vertretungsplan – Zusatz-Tabelle (URL) in den Events-Tab verschoben; Aktivieren/Deaktivieren, Speichern und Vorschau; systemweite Einstellung.", "📅 Einstellungen › Akademischer Kalender: Aktive akademische Periode kann direkt gesetzt werden.", " Doku: README zur Einstellungen-Seite (Tabs) und System-Settings-API ergänzt." ] }, { "version": "2025.1.0-alpha.10", "date": "2025-10-15", "changes": [ "🔐 Auth: Login und Benutzerverwaltung implementiert (rollenbasiert, persistente Sitzungen).", "✨ UI: Benutzer-Menü oben rechts – DropDownButton mit Benutzername/Rolle; Einträge: ‘Profil’ und ‘Abmelden’.", "🧩 Frontend: Syncfusion SplitButtons integriert (react-splitbuttons) und Vite-Konfiguration für Pre-Bundling ergänzt.", "🐛 Fix: Import-Fehler ‘@syncfusion/ej2-react-splitbuttons’ – Anleitung in README hinzugefügt (optimizeDeps + Volume-Reset)." ] }, { "version": "2025.1.0-alpha.9", "date": "2025-10-14", "changes": [ "✨ UI: Einheitlicher Lösch-Workflow für Termine – alle Typen (Einzeltermin, Einzelinstanz, ganze Serie) werden mit eigenen, benutzerfreundlichen Dialogen behandelt.", "🔧 Frontend: Syncfusion-RecurrenceAlert und DeleteAlert werden abgefangen und durch eigene Dialoge ersetzt (inkl. finale Bestätigung für Serienlöschung).", "✅ Bugfix: Keine doppelten oder verwirrenden Bestätigungsdialoge mehr beim Löschen von Serienterminen.", "📖 Doku: README und Copilot-Instructions um Lösch-Workflow und Dialoghandling erweitert." ] }, { "version": "2025.1.0-alpha.8", "date": "2025-10-11", "changes": [ "🎨 Theme: Umstellung auf Syncfusion Material 3; zentrale CSS-Imports in main.tsx", "🧹 Cleanup: Tailwind CSS komplett entfernt (Pakete, PostCSS, Stylelint, Konfigurationsdateien)", "🧩 Gruppenverwaltung: \"infoscreen_groups\" auf Syncfusion-Komponenten (Buttons, Dialoge, DropDownList, TextBox) umgestellt; Abstände verbessert", "🔔 Benachrichtigungen: Vereinheitlichte Toast-/Dialog-Texte; letzte Alert-Verwendung ersetzt", "📖 Doku: README und Copilot-Anweisungen angepasst (Material 3, zentrale Styles, kein Tailwind)" ] }, { "version": "2025.1.0-alpha.7", "date": "2025-09-21", "changes": [ "🧭 UI: Periode-Auswahl (Syncfusion) neben Gruppenauswahl; kompaktes Layout", "✅ Anzeige: Abzeichen für vorhandenen Ferienplan + Zähler 'Ferien im Blick'", "📅 Scheduler: Standardmäßig keine Terminierung in Ferien; Block-Darstellung wie Ganztagesereignis; schwarze Textfarbe", "📤 Ferien: Upload von TXT/CSV (headless TXT nutzt Spalten 2–4)", "🔧 UX: Schalter in einer Reihe; Dropdown-Breiten optimiert" ] }, { "version": "2025.1.0-alpha.6", "date": "2025-09-20", "changes": [ "🗓️ NEU: Akademische Perioden System - Unterstützung für Schuljahre, Semester und Trimester", "🔗 ERWEITERT: Events und Medien können jetzt optional einer akademischen Periode zugeordnet werden", "🎯 BILDUNG: Fokus auf Schulumgebung mit Erweiterbarkeit für Hochschulen" ] }, { "version": "2025.1.0-alpha.5", "date": "2025-09-14", "changes": [ "Komplettes Redesign des Backend-Handlings der Gruppenzuordnungen von neuen Clients und der Schritte bei Änderung der Gruppenzuordnung." ] }, { "version": "2025.1.0-alpha.4", "date": "2025-09-01", "changes": [ "Grundstruktur für Deployment getestet und optimiert.", "FIX: Programmfehler beim Umschalten der Ansicht auf der Medien-Seite behoben." ] }, { "version": "2025.1.0-alpha.3", "date": "2025-08-30", "changes": [ "NEU: Programminfo-Seite mit dynamischen Daten, Build-Infos und Changelog.", "NEU: Logout-Funktionalität implementiert.", "FIX: Breite der Sidebar im eingeklappten Zustand korrigiert." ] }, { "version": "2025.1.0-alpha.2", "date": "2025-08-29", "changes": [ "INFO: Analyse und Anzeige der verwendeten Open-Source-Bibliotheken." ] }, { "version": "2025.1.0-alpha.1", "date": "2025-08-28", "changes": [ "Initiales Setup des Projekts und der Grundstruktur." ] } ] }