feat: redesign CMS and unify German admin UI

This commit is contained in:
2026-09-17 16:51:24 +02:00
parent a2b3e99174
commit 7ec0c51ff5
129 changed files with 952 additions and 550 deletions
+3 -3
View File
@@ -11,13 +11,13 @@ const WINDOW_FUTURE_MS = 400 * 24 * 60 * 60 * 1000;
/**
* Builds the calendar entries for Anna's personal ICS feed: confirmed
* bookings (never pending ones) plus standalone public events — onsite and
* bookings (never pending ones) plus standalone public events - onsite and
* online alike. Deliberately never includes the meeting password anywhere
* in the output, only a link to the protected join page.
*
* Local API is used with the default overrideAccess: true because this is
* only ever reached after the caller already verified the feed's secret
* token (see app/(frontend)/calendar/[tokenFile]/route.ts) — equivalent
* token (see app/(frontend)/calendar/[tokenFile]/route.ts) - equivalent
* trust to the existing admin calendar view.
*/
export async function getAdminFeedICSEvents(payload: Payload): Promise<ICSEvent[]> {
@@ -83,7 +83,7 @@ export async function getAdminFeedICSEvents(payload: Payload): Promise<ICSEvent[
end: new Date(b.endTime),
summary: offer?.title ?? "Termin",
description: description || undefined,
// Vor Ort: vollständige Adresse. Online: literal "Online" — never the
// Vor Ort: vollständige Adresse. Online: literal "Online" - never the
// meeting password, which is intentionally not part of this feed.
location: isOnline ? "Online" : fullAddress || undefined,
url,