- Update README.md with comprehensive feature description - Add automatic cleanup and deletion log to features list - Document countdown display and 7-day retention policy - Add Testing section with test-cleanup.sh instructions - Update API endpoints with new admin routes - Update CHANGELOG.md with complete feature overview - Backend: Services, Repositories, Scheduler, API endpoints - Frontend: DeletionLogSection, countdown, SweetAlert2 feedback - Infrastructure: nginx config updates - Testing: Comprehensive test tools and documentation - Update TODO.md marking feature as completed - Update FEATURE_PLAN with final status - All 11 tasks completed (100%) - Bug fixes documented - Deployment checklist updated - Final timeline and statistics - Organize test files into tests/ directory - Move TESTING-CLEANUP.md to tests/ - Move test-cleanup.sh to tests/ Feature is now complete and ready for merge.
116 lines
4.7 KiB
Markdown
116 lines
4.7 KiB
Markdown
# 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
|
|
- [x] **Persistentes Reordering: Drag-and-drop in `ImageGallery` + Backend-Endpunkt** 🚧
|
|
- **Status**: In Planung
|
|
- **Feature Plan**: `docs/FEATURE_PLAN-reordering.md`
|
|
- **Aufgaben**: 9 Tasks (Backend API + Frontend DnD + Integration)
|
|
- **Geschätzte Zeit**: 2-3 Tage
|
|
- **Library**: @dnd-kit/core für moderne DnD-Funktionalität
|
|
---
|
|
|
|
# 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 nicht freigegebener Gruppen** ✅ ABGESCHLOSSEN
|
|
- **Status**: Fertiggestellt und getestet
|
|
- **Feature Plan**: `docs/FEATURE_PLAN-delete-unproved-groups.md`
|
|
- **Branch**: `feature/DeleteUnprovedGroups`
|
|
- **Details**:
|
|
- Automatische Löschung nach 7 Tagen
|
|
- Countdown-Anzeige in Moderationsansicht
|
|
- Vollständiges Deletion-Log mit Statistiken
|
|
- Täglicher Cron-Job (10:00 Uhr)
|
|
- Test-Tools: `tests/test-cleanup.sh` und `tests/TESTING-CLEANUP.md`
|
|
- **Aufgaben**: 11 Tasks (DB Migration + Backend Cleanup Service + Cron-Job + Frontend UI)
|
|
- **Geschätzte Zeit**: 2-3 Tage
|
|
- **Löschfrist**: 7 Tage nach Upload (nur nicht freigegebene Gruppen)
|
|
- **Cron-Job**: Täglich 10:00 Uhr
|
|
[ ] 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
|
|
[x] Ergänzung der Möglichkeit eine Beschreibung zu den Bildern hinzuzufügen
|
|
[ ] Erweiterung der ModerationPage um reine Datenbankeditor der sqlite Datenbank.
|
|
|
|
|
|
## 🚀 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
|
|
|
|
---
|
|
|
|
|
|
|