Tabs in der Admin UI

This commit is contained in:
Erik Thiele
2026-06-07 12:27:19 +02:00
parent 4b29d9a27f
commit 0efc5bb346
8 changed files with 3076 additions and 262 deletions

View File

@@ -15,6 +15,8 @@ Browserbasiertes Digital-Signage-System für interne Info-Screens.
- Auto-Reload bei Playlist-Änderungen
- Newsticker pro Screen
- **Custom-URL-Button**: pro Screen konfigurierbarer Aktions-Button oben links im Player (öffnet URL in iframe-Overlay mit Zurück-Button oder per Direkt-Weiterleitung)
- Tab-basierte Admin-UI pro Screen: Playlist, Einstellungen, Medien (Tabler Tabs)
- Priority-Seite ebenfalls mit Tabs: Playlist und Medien
- Dark Mode (localStorage-persistiert)
- CI-konformes Admin-UI (CANCOM-Design: `brand-surface`, `nav-surface` rot)
@@ -118,11 +120,15 @@ docker compose up -d
| `GET /admin` | Redirect zum ersten konfigurierten Standort |
| `GET /admin/<site>` | Admin-Dashboard für einen Standort |
| `GET /admin/<site>/priority` | Priority-Playlist (separate Seite) |
| `GET /admin/<site>/update/<screen>` | Screen-Einstellungen speichern (POST) |
| `GET /admin/<site>/upload/<screen>` | Medien hochladen (POST) |
| `GET /admin/<site>/add-url/<screen>` | URL zur Playlist hinzufügen (POST) |
| `GET /admin/<site>/delete/<screen>/<filename>` | Datei löschen (POST) |
| `GET /admin/<site>/playlist/<screen>` | Playlist-Reihenfolge speichern (POST JSON) |
| `POST /admin/<site>/update/<screen>` | Screen-Einstellungen speichern |
| `POST /admin/<site>/upload/<screen>` | Medien hochladen |
| `POST /admin/<site>/add-url/<screen>` | URL zur Playlist hinzufügen |
| `POST /admin/<site>/delete/<screen>/<filename>` | Datei löschen |
| `POST /admin/<site>/playlist/<screen>` | Playlist-Reihenfolge speichern (JSON) |
| `POST /admin/<site>/delete-screen/<screen>` | Screen + Medien löschen |
| `GET /admin/<site>/add-screen?name=<name>` | Neuen Screen anlegen |
| `GET /add-site?name=<name>` | Neuen Standort anlegen |
| `POST /admin/<site>/delete-site` | Standort + alle Screens/Medien löschen |
| `GET /player/<site>/<screen>` | Player-Ansicht |
| `GET /playlist/<site>/<screen>/hash` | Playlist-Checksumme (für Auto-Reload) |
| `GET /willkommen?site=<site>` | Willkommensseite-Formular (GET + POST) |
@@ -138,10 +144,10 @@ docker compose up -d
http://localhost:5005/admin/<standort>
```
- Screens konfigurieren
- Screens konfigurieren (Tab-basiert: Playlist, Einstellungen, Medien)
- Medien hochladen / löschen
- Playlist per Drag & Drop sortieren
- Priority-Playlist verwalten
- Priority-Playlist verwalten (ebenfalls mit Tabs)
- Willkommensseite generieren (bis zu 3 Kundenlogos)
- Custom-URL-Aktionsbutton pro Screen konfigurieren (iframe-Overlay oder Weiterleitung)
- Standorte anlegen & löschen
@@ -171,6 +177,7 @@ Maximal 3 Kunden eingeben → Logos werden via OpenAI + Brandfetch gesucht → `
```json
{
"server_url": "http://signage.ccmake.de",
"admin": { "username": "...", "password": "..." },
"sites": {
"stuttgart": {