diff --git a/homelab-ai-bot/savetv_web.py b/homelab-ai-bot/savetv_web.py
index b51bbc43..8b18351b 100644
--- a/homelab-ai-bot/savetv_web.py
+++ b/homelab-ai-bot/savetv_web.py
@@ -575,11 +575,18 @@ function filmCard(f) {
var detailsHtml = cached ? buildDetails(cached) : '';
var detailsClass = detailsHtml ? 'film-details loaded' : 'film-details';
+ var dateLabel = '';
+ if (f.start_date) {
+ var d = new Date(f.start_date);
+ if (!isNaN(d)) dateLabel = d.toLocaleDateString('de-DE', {day:'2-digit', month:'2-digit', year:'numeric'});
+ }
+
return '
'
+ statusEl
+ '
' + esc(f.title) + '
'
+ '
'
+ '' + esc(f.station) + ''
+ + (dateLabel ? '' + dateLabel + '' : '')
+ '' + (f.cinema ? 'Kino' : 'TV') + ''
+ '' + daysLabel + ''
+ '
'
@@ -710,18 +717,20 @@ def api_films():
station = tc.get("STVSTATIONNAME", "?")
days_left = int(tc.get("IDAYSLEFTBEFOREDELETE", 0))
tid = int(tc.get("ITELECASTID", 0))
+ start_date = tc.get("DSTARTDATE", "")
is_cinema = savetv._is_known_cinema(title)
key = title.lower().strip()
if key in seen_titles:
if days_left > seen_titles[key]["days_left"]:
- seen_titles[key].update(days_left=days_left, tid=tid)
+ seen_titles[key].update(days_left=days_left, tid=tid, start_date=start_date)
continue
seen_titles[key] = {
"tid": tid, "title": title, "station": station,
"days_left": days_left, "cinema": is_cinema,
+ "start_date": start_date,
}
- films = sorted(seen_titles.values(), key=lambda x: (x["days_left"], not x["cinema"]))
+ films = sorted(seen_titles.values(), key=lambda x: x.get("start_date", ""), reverse=True)
dl_log = _load_download_log()
return jsonify({