Globale Filter (Ratsperiode + Parteien) seitenübergreifend im Layout #15

Closed
opened 2026-04-01 14:49:58 +02:00 by tobias · 0 comments
Owner

Aktuell

Ratsperioden- und Parteien-Filter existieren nur auf der Abstimmungs-Seite.

Ziel

Filter im Layout (sticky unter Navigation), wirken auf ALLE Seiten:

  • Dashboard: gefilterte Statistiken
  • Vorlagen: nach Datum + Antragsteller
  • Ketten: nach Aktivitätsdatum + Antragsteller
  • Abstimmungen: bereits implementiert
  • Fraktionen: nach Antrags-Datum

Implementierung

Frontend

  • Shared Filter State (Svelte 5 Runes, $state() in filters.svelte.ts)
  • Filter-Bar aus Abstimmungen ins Layout verschieben
  • Sticky unter Navigation
  • Parteien-Buttons mit Parteifarbe
  • $effect() in jeder Seite reagiert auf Filteränderungen

Backend

  • Perioden-Helper in shared utility extrahieren (tracker/core/perioden.py)
  • periode + parteien Parameter auf alle Endpoints:
    • GET /api/vorlagen
    • GET /api/ketten
    • GET /api/stats/dashboard
    • GET /api/fraktionen/{kuerzel}/dashboard

Ratsperioden

Periode Von Bis
2025-2030 2025-11-01 2030-10-31
2020-2025 2020-11-01 2025-10-31
2014-2020 2014-06-01 2020-10-31
2009-2014 2009-09-01 2014-05-31
2004-2009 2004-09-01 2009-08-31
## Aktuell Ratsperioden- und Parteien-Filter existieren nur auf der Abstimmungs-Seite. ## Ziel Filter im Layout (sticky unter Navigation), wirken auf ALLE Seiten: - Dashboard: gefilterte Statistiken - Vorlagen: nach Datum + Antragsteller - Ketten: nach Aktivitätsdatum + Antragsteller - Abstimmungen: bereits implementiert - Fraktionen: nach Antrags-Datum ## Implementierung ### Frontend - Shared Filter State (Svelte 5 Runes, `$state()` in `filters.svelte.ts`) - Filter-Bar aus Abstimmungen ins Layout verschieben - Sticky unter Navigation - Parteien-Buttons mit Parteifarbe - `$effect()` in jeder Seite reagiert auf Filteränderungen ### Backend - Perioden-Helper in shared utility extrahieren (`tracker/core/perioden.py`) - `periode` + `parteien` Parameter auf alle Endpoints: - GET /api/vorlagen - GET /api/ketten - GET /api/stats/dashboard - GET /api/fraktionen/{kuerzel}/dashboard ### Ratsperioden | Periode | Von | Bis | |---------|-----|-----| | 2025-2030 | 2025-11-01 | 2030-10-31 | | 2020-2025 | 2020-11-01 | 2025-10-31 | | 2014-2020 | 2014-06-01 | 2020-10-31 | | 2009-2014 | 2009-09-01 | 2014-05-31 | | 2004-2009 | 2004-09-01 | 2009-08-31 |
Sign in to join this conversation.
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: tobias/antragstracker#15
No description provided.