diff --git a/app/main.py b/app/main.py index cda8b91..7296a65 100644 --- a/app/main.py +++ b/app/main.py @@ -2268,6 +2268,26 @@ async def v2_tags(request: Request, current_user: Optional[dict] = Depends(get_c }) +@app.get("/v2/abos", response_class=HTMLResponse) +async def v2_abos(request: Request, current_user: dict = Depends(require_auth)): + """Eigene E-Mail-Abos verwalten — auth-only.""" + return templates.TemplateResponse("v2/screens/abos.html", { + "request": request, + "v2_active_nav": "abos", + **_v2_template_context(current_user), + }) + + +@app.get("/v2/feed", response_class=HTMLResponse) +async def v2_feed(request: Request, current_user: dict = Depends(require_auth)): + """Atom-Feed-Konfigurations-Seite — auth-only.""" + return templates.TemplateResponse("v2/screens/feed.html", { + "request": request, + "v2_active_nav": "feed", + **_v2_template_context(current_user), + }) + + @app.get("/v2/cluster", response_class=HTMLResponse) async def v2_cluster(request: Request, current_user: dict = Depends(require_admin)): """Cluster-Liste — nur für Admins.""" diff --git a/app/templates/v2/base.html b/app/templates/v2/base.html index b9dc829..70717a7 100644 --- a/app/templates/v2/base.html +++ b/app/templates/v2/base.html @@ -57,7 +57,8 @@
— Daten
{{ icon("chart-bar", 14) }} Auswertungen {{ icon("file-csv", 14) }} Export · API - {{ icon("rss", 14) }} Atom-Feed + {{ icon("rss", 14) }} Atom-Feed + {{ icon("envelope-simple", 14) }} Meine Abos {% endif %} diff --git a/app/templates/v2/screens/abos.html b/app/templates/v2/screens/abos.html new file mode 100644 index 0000000..47227c5 --- /dev/null +++ b/app/templates/v2/screens/abos.html @@ -0,0 +1,163 @@ +{% extends "v2/base.html" %} + +{% block title %}Meine Abos — GWÖ-Antragsprüfer{% endblock %} + +{% set v2_active_nav = "abos" %} + +{% block head_extra %} + +{% endblock %} + +{% block main %} +
+

Meine E-Mail-Abos

+

+ Tägliche Zusammenfassung neuer Bewertungen — gefiltert nach Bundesland und/oder Partei. +

+
+ +
+
+ + +
+
+ + +
+
+ + +
+ +
+ +
+
Lade …
+ +{% endblock %} + +{% block body_scripts %} + +{% endblock %} diff --git a/app/templates/v2/screens/feed.html b/app/templates/v2/screens/feed.html new file mode 100644 index 0000000..ef1c341 --- /dev/null +++ b/app/templates/v2/screens/feed.html @@ -0,0 +1,122 @@ +{% extends "v2/base.html" %} + +{% block title %}Atom-Feed — GWÖ-Antragsprüfer{% endblock %} + +{% set v2_active_nav = "feed" %} + +{% block head_extra %} + +{% endblock %} + +{% block main %} +
+

Atom-Feed

+

+ Konfigurierbarer Feed der neuesten Bewertungen — abonnierbar mit jedem RSS/Atom-Reader. +

+
+ +
+ + + + + + + + +
+ +
+
Feed-URL
+ /api/feed.xml +
+ 📰 Öffnen + + In Feedly +
+
+ +
+

Hinweis: Du kannst die Feed-URL in jedem RSS-Reader (z.B. Feedly, NewsBlur, Inoreader, NetNewsWire, Thunderbird) abonnieren. Der Feed ist Atom 1.0 und liefert die letzten Bewertungen mit Score, Empfehlung und Kurzbegründung.

+

Wenn du regelmäßige Mails statt Pull-Feed willst, lege ein E-Mail-Abo an.

+
+ +{% endblock %} + +{% block body_scripts %} + +{% endblock %}