Aufgabe 32: Admin Dashboard — Paginierung & Stats-Karten #7

Open
opened 2026-06-23 09:01:58 +02:00 by danielkrause · 1 comment
Owner

Ziel

Admin-Dashboard (/admin) bekommt Paginierung (20 pro Seite) und Stats-Karten.

Ist-Stand

  • /admin existiert mit Filter-Bar (Status, Triage)
  • Keine Paginierung — alle Submissions auf einer Seite
  • Keine Stats-Übersicht

Akzeptanzkriterien

  • Paginierung: 20 Einträge pro Seite, "← Zurück / Weiter →" Navigation
  • Stats-Karten oben: Gesamt, Published, Pending, Heute
  • Filter erhalten bei Seitenwechsel (Query-Parameter)
  • Performance: COUNT-Abfragen optimiert (kein SELECT * für Stats)
  • iOS-26-Design, Dark/Light Theme respektieren

Dateien

  • app.py/admin Route + Template-Logik
  • CSS im bestehenden <style>-Block erweitern

Qualität

ruff check app.py --fix && ruff format app.py
Manuell testen: Admin öffnen, durch Seiten blättern, Filter+Seite kombinieren

## Ziel Admin-Dashboard (`/admin`) bekommt Paginierung (20 pro Seite) und Stats-Karten. ## Ist-Stand - `/admin` existiert mit Filter-Bar (Status, Triage) - Keine Paginierung — alle Submissions auf einer Seite - Keine Stats-Übersicht ## Akzeptanzkriterien - Paginierung: 20 Einträge pro Seite, "← Zurück / Weiter →" Navigation - Stats-Karten oben: Gesamt, Published, Pending, Heute - Filter erhalten bei Seitenwechsel (Query-Parameter) - Performance: COUNT-Abfragen optimiert (kein `SELECT *` für Stats) - iOS-26-Design, Dark/Light Theme respektieren ## Dateien - `app.py` — `/admin` Route + Template-Logik - CSS im bestehenden `<style>`-Block erweitern ## Qualität `ruff check app.py --fix && ruff format app.py` Manuell testen: Admin öffnen, durch Seiten blättern, Filter+Seite kombinieren
Author
Owner

🔗 Verwandt: #3 (Aufgabe 28)

Issue #3 behandelt die Tabellen-Logik (Filter, Textsuche, Aktionen).
Dieses Issue (#7) fokussiert auf Paginierung & Stats-Karten — den UI-Teil.

Beide Issues zusammen ergeben das vollständige Admin-Dashboard.

Alicia: Beide Issues in einem Rutsch bearbeiten.

## 🔗 Verwandt: #3 (Aufgabe 28) Issue #3 behandelt die Tabellen-Logik (Filter, Textsuche, Aktionen). Dieses Issue (#7) fokussiert auf **Paginierung & Stats-Karten** — den UI-Teil. Beide Issues zusammen ergeben das vollständige Admin-Dashboard. **Alicia: Beide Issues in einem Rutsch bearbeiten.**
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: danielkrause/BSN-Chatsystem#7