fix(diarization-ui): show runtime counter in server-rendered jobs fallback

This commit is contained in:
2026-03-21 15:21:00 +01:00
parent 91ac4c3c59
commit 84d0de1972

20
app.py
View File

@@ -728,6 +728,24 @@ def prompt_delete(prompt_id: int):
return HTMLResponse("<meta http-equiv='refresh' content='0; url=/prompts'>")
def _fmt_elapsed(start_iso: Optional[str], end_iso: Optional[str] = None) -> str:
if not start_iso:
return "-"
try:
s = datetime.fromisoformat(start_iso)
e = datetime.fromisoformat(end_iso) if end_iso else datetime.now()
sec = max(0, int((e - s).total_seconds()))
if sec < 60:
return f"{sec}s"
m, s2 = divmod(sec, 60)
if m < 60:
return f"{m}m {s2}s"
h, m2 = divmod(m, 60)
return f"{h}h {m2}m"
except Exception:
return "-"
def _jobs_payload(limit: int = 200):
with db() as c:
jobs = c.execute(
@@ -783,7 +801,7 @@ def jobs_page(queued: Optional[int] = None):
items = _jobs_payload(200)
pre = "".join([
(
f"<div class='card'><b>Job #{it['id']}</b> [{it['kind']}] · <b>{it['status']}</b><br>"
f"<div class='card'><b>Job #{it['id']}</b> [{it['kind']}] · <b>{it['status']}</b> · läuft: {_fmt_elapsed(it.get('started_at') or it.get('created_at'), it.get('finished_at'))}<br>"
f"<small>{it['created_at']}</small><br>"
f"<div class='row' style='margin-top:8px'>"
+ (