feat: admin articles grouped view, live stats, + bug fixes
Admin articles list: - Group EN/DE language variants into a single row (grouped by url_path) - Language chips (● EN/● DE) coloured by status: green=live, amber=scheduled, blue=draft - Inline View ↗ (live only) and Edit buttons per variant — one-click access - Filter by language switches back to flat single-row view - Live HTMX polling of article counts while generation runs (every 3s, self-terminates) - Table overflow fix: card gets overflow:hidden, table wrapped in overflow-x:auto scroll div Bug fixes: - X-Forwarded-Proto: pass $http_x_forwarded_proto through Nginx so Quart sees https - pipeline_routes.py: fix relative import for analytics module (from .analytics → from ..analytics) - Scheduled articles: redirect to parent path instead of 404 when not yet published - city-cost-de: change priority_column from population to padel_venue_count - Quote wizard step 4: make location_status required - Article generation: use COUNT(*) instead of 501-sentinel hack for row counts - Makefile: pin Tailwind v4.1.18, add dev/help targets, uv run python, .PHONY Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -372,7 +372,7 @@ def _is_stale(run: dict) -> bool:
|
||||
@role_required("admin")
|
||||
async def pipeline_dashboard():
|
||||
"""Main page: health stat cards + tab container."""
|
||||
from .analytics import fetch_analytics # noqa: PLC0415
|
||||
from ..analytics import fetch_analytics # noqa: PLC0415
|
||||
|
||||
summary, serving_meta = await asyncio.gather(
|
||||
asyncio.to_thread(_fetch_extraction_summary_sync),
|
||||
@@ -442,7 +442,7 @@ async def pipeline_overview():
|
||||
]
|
||||
last_export = serving_meta.get("exported_at_utc", "")[:19].replace("T", " ") or None
|
||||
else:
|
||||
from .analytics import fetch_analytics # noqa: PLC0415
|
||||
from ..analytics import fetch_analytics # noqa: PLC0415
|
||||
schema_rows = await fetch_analytics(
|
||||
"SELECT table_name FROM information_schema.tables "
|
||||
"WHERE table_schema = 'serving' ORDER BY table_name"
|
||||
|
||||
Reference in New Issue
Block a user