# TODO / Offene Punkte Diese Datei listet die noch offenen Arbeiten, die ich im Projekt verfolge. Ich pflege sie, sobald ich Aufgaben erledige. ## Anstehende Aufgaben ## Skript für Datenverschieben im Backend Container - [ ] ~~Skript erstellen, das vorhandene Daten aus dem Volume in den neuen data Ordner im Backend Container verschiebt.~~ - [ ] ~~Sicherstellen, dass das Skript nur einmal ausgeführt wird, z.B. durch eine Umgebungsvariable oder eine Flag-Datei.~~ - [ ] ~~Dokumentation im README aktualisieren, um das Skript und seine Verwendung zu erklären.~~ Alte struktur: Alle Datein in src/data Neue Struktur: Datenbank in src/data/db und bilder in src/data/images ### Update Frameworks im Frontend und Backend ✅ ABGESCHLOSSEN - [x] Backend: Node.js auf Node 24 aktualisiert (Express läuft stabil) - [x] Frontend: React 18.3.1, React Router v6, MUI v5 aktualisiert - [x] react-scripts 5.0.1 - [x] Node 18 (Dev) / Node 24 (Backend Prod) **Details siehe:** `CHANGELOG.md` und `docs/UPGRADE_PLAN-upgrade-deps-react-node-20251028.md` **Branch:** `upgrade/deps-react-node-20251028` ### Frontend - [x] Code Cleanup & Refactoring - [x] Überprüfung der Komponentenstruktur - [x] Entfernen ungenutzter Dateien - [x] Vereinheitlichung der ImageGallery Komponente: - [x] `ImagePreviewGallery` und 'GroupCard' zusammenführen - [x] Die neue Komponente soll ImageGallery heißen. Sie besteht aus einem Grid aus "GroupCard" die `GroupCard` soll zukünfig `ImageGalleryCard`heißen. - [x] Die neue Komponente `ImageGallery` soll so aussehen wir die GroupCard im Grid -> siehe Pages/ModerationGroupPage.js und Pages/GroupOverviewPage.js und auch die gleichen Funktionalitäten besitzen. - [x] Klärung SimpleMultiDropzone vs. MultiImageUploadDropzone (MultiImageUploadDropzone wurde gelösch, SimpleMultiDropzone umbenannt in MultiImageDropzone) - [x] alte group-card css styles aus ImageGallery.css entfernen - [ ] Persistentes Reordering: Drag-and-drop in `ImagePreviewGallery` + Backend-Endpunkt --- # Zusätzliche Funktionen ## Backend [x] Erweiterung der API um die Funktion bestehende Daten zu editieren/aktualisieren [x] Preview Generierung für hochgeladene Bilder [x] Automatisches Löschen von Groupen, welche nach einer bestimmten Zeit (z.B. 5 Tage) nicht freigegeben wurden [ ] Integration eines Benachrichtigungssystems (E-Mail, Push-Benachrichtigungen) wenn eine neue Slideshow hochgeladen wurde [ ] Implementierung eines Logging-Systems zur Nachverfolgung von Änderungen und Aktivitäten # Frontend [x] Erweiterung der Benutzeroberfläche um eine Editierfunktion für bestehende Einträge in ModerationPage.js [x] In der angezeigten Gruppen soll statt Bilder ansehen Gruppe editieren stehen [x] Diese bestehende Ansicht (Bilder ansehen) soll als eigene Seite implementiert werden ## 🚀 Deployment-Überlegungen ### Speicher-Management - **Komprimierung**: Automatische Bildkomprimierung für große Dateien ### Sicherheit - **File-Type Validation**: Nur erlaubte Bildformate - **Virus-Scanning**: Optional für Produktionsumgebung --- ## 📈 Erweiterungs-Möglichkeiten (Zukunft) ### Erweiterte Features - **Benutzer-Accounts**: Upload-Gruppen Benutzern zuordnen - **Export**: Slideshow als Video oder PDF exportieren ### Admin-Features - **Bulk-Operations**: Mehrere Gruppen gleichzeitig verwalten (zum Beispiel löschen) --- ## 🎯 Erfolgskriterien ### Must-Have - ✅ Mobile-Kompatibilität ### Nice-to-Have - 🎨 Drag & Drop Reihenfolge ändern - 📊 Upload-Progress mit Details - 🖼️ Thumbnail-Navigation in Slideshow - 🔄 Batch-Operations (alle entfernen, etc.) ### Future Features - 👤 User-Management - 🏷️ Tagging-System - 📤 Export-Funktionen - 🎵 Audio-Integration ---