Weekly Notification: Zeitraum auf 2 Wochen erweitern

This commit is contained in:
2026-09-13 14:31:40 +02:00
parent cc803f2afe
commit 78cafdd5dd
+5 -3
View File
@@ -452,7 +452,7 @@ def get_weekly_events(conn, calendar_label, searchwords, blacklistwords=None):
if days_until_saturday == 0:
days_until_saturday = 7
week_start = today + timedelta(days=days_until_saturday)
week_end = week_start + timedelta(days=6, hours=23, minutes=59, seconds=59)
week_end = week_start + timedelta(days=13, hours=23, minutes=59, seconds=59)
week_start_naive = week_start.replace(tzinfo=None)
week_end_naive = week_end.replace(tzinfo=None)
@@ -546,7 +546,7 @@ def send_weekly_notification(events, searchwords, week_start, week_end, blacklis
event_date = event["start_at"].replace(tzinfo=timezone.utc).astimezone(tz).strftime("%a, %d.%m.")
subject = f"Vorab-Info: Termin am {event_date}"
else:
subject = f"Vorab-Info: {count} Termine naechste Woche"
subject = f"Vorab-Info: {count} Termine in 2 Wochen"
event_rows = ""
for event in events:
@@ -570,7 +570,7 @@ def send_weekly_notification(events, searchwords, week_start, week_end, blacklis
<html>
<head><meta charset="utf-8"></head>
<body style="font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; max-width: 600px; margin: 0 auto; padding: 20px;">
<h2 style="color: #333;">Vorab-Info: Naechste Woche</h2>
<h2 style="color: #333;">Vorab-Info: Naechste 2 Wochen</h2>
<p style="color: #555;">Vom <strong>{start_str}</strong> bis <strong>{end_str}</strong> stehen folgende Termine an:</p>
<table style="width: 100%; border-collapse: collapse; margin: 20px 0; background: #f9f9f9; border-radius: 8px; overflow: hidden;">
{event_rows}
@@ -612,7 +612,9 @@ def check_and_send_weekly_notification():
if should_send_weekly(conn):
searchwords = parse_weekly_searchwords()
blacklistwords = parse_weekly_blacklistwords()
log.info("Wochenbenachrichtigung: Suchbegriffe=%s, Blacklist=%s", searchwords, blacklistwords)
events, week_start, week_end = get_weekly_events(conn, CALENDAR_LABEL, searchwords, blacklistwords)
log.info("Wochenbenachrichtigung: %d Events nach Filterung", len(events))
if events:
send_weekly_notification(events, searchwords, week_start, week_end, blacklistwords)
log_weekly_notification(conn, len(events))