From 82421b3c86335f8beb21c6943380180257a32e65 Mon Sep 17 00:00:00 2001 From: m Date: Mon, 4 May 2026 13:57:40 +0200 Subject: [PATCH] =?UTF-8?q?fix(t-paliad-110):=20hide=20=C3=9Cberf=C3=A4lli?= =?UTF-8?q?g=20card=20on=20Beides=20view?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Spec is explicit that Überfällig is deadline-view-only — only showing it on type=deadline matches the rationale that 'overdue' is a deadline- specific concept (appointments don't go overdue, they happen). The previous logic also surfaced the card on Beides whenever the deadline-side overdue count > 0, which would have rendered an alarm card on a mixed view. Caught during live verification on paliad.de. --- frontend/src/client/events.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/frontend/src/client/events.ts b/frontend/src/client/events.ts index 8347f2b..fb02b97 100644 --- a/frontend/src/client/events.ts +++ b/frontend/src/client/events.ts @@ -291,13 +291,17 @@ async function loadSummary() { } } +// Überfällig is deadline-view-only per t-paliad-110 spec. It stays hidden +// in Beides mode even when overdue > 0 — the design treats "overdue" as a +// deadline-specific concept (appointments don't go overdue, they happen), +// so showing the card in mixed mode would be a category error. function applyOverdueState(overdue: number) { const card = document.querySelector('.frist-summary-card[data-bucket="overdue"]'); if (!card) return; - const includeDeadlines = currentType === "deadline" || currentType === "all"; - const hidden = !includeDeadlines || overdue === 0; + const isDeadlineView = currentType === "deadline"; + const hidden = !isDeadlineView || overdue === 0; card.classList.toggle("frist-card-overdue-hidden", hidden); - card.classList.toggle("frist-card-alarm", !hidden && overdue > 0); + card.classList.toggle("frist-card-alarm", isDeadlineView && overdue > 0); } async function loadList() {