import { notFound } from "next/navigation"; import { BellRing, CheckCircle2 } from "lucide-react"; import { getPublicAlarm } from "@/lib/alarms/service"; import { alarmLabel, dateKey, durationLabel, instantLabel, } from "@/lib/alarms/format"; import { AlertConfirmForm } from "./alert-confirm-form"; export const metadata = { title: "Notdienstalarm · Kita-Planer", robots: { index: false, follow: false }, referrer: "no-referrer" as const, }; export const dynamic = "force-dynamic"; export default async function AlertPage({ params, }: { params: Promise<{ token: string }>; }) { const { token } = await params; const alarm = await getPublicAlarm(token); if (!alarm) notFound(); const now = new Date(), expired = alarm.expiresAt <= now; const canRespond = alarm.status === "PENDING" && !expired; const overdue = alarm.deadline <= now; return (

Kita-Planer · {alarm.kitaName}

{alarm.status === "CONFIRMED" ? ( ) : ( )}

{alarm.status === "PENDING" ? "Könnt ihr den Notdienst übernehmen?" : alarmLabel(alarm)}

Hallo {alarm.firstName}, diese Rückmeldung gilt für euren gesamten Haushalt.

Datum
{dateKey(alarm.date).split("-").reverse().join(".")}
Einsatz
{durationLabel(alarm)}
Haushalt
{alarm.familyName}
Antwortfrist
{instantLabel(alarm.deadline)} Uhr
{canRespond ? ( <> {overdue && (

Die Antwortfrist ist abgelaufen. Ihr könnt noch antworten. Eine verspätete Zusage muss die Koordination freigeben, da möglicherweise bereits Ersatz organisiert wird.

)} ) : (
{alarm.status === "CANCELLED" ? "Der Einsatz wurde storniert. Ihr müsst für diesen Alarm nicht einspringen." : alarm.status === "CONFIRMED" ? "Euer Haushalt hat zugesagt. Die Kita rechnet mit euch. Bei einer Änderung kontaktiert bitte die Koordination." : alarm.status === "LATE_CONFIRMATION" ? "Eure verspätete Zusage ist gespeichert. Wartet bitte auf die Freigabe durch die Koordination." : alarm.status === "DECLINED" ? "Die Absage eures Haushalts ist gespeichert. Die Koordination kümmert sich um Ersatz." : alarm.status === "REVIEW_REQUIRED" ? "Die bisherigen Rückmeldungen müssen von der Koordination geprüft werden. Bitte kontaktiert die Kita." : "Der Einsatz ist beendet. Dieser Rückmeldelink ist abgelaufen."}
)}

Den persönlichen Link bitte innerhalb eures Haushalts behalten. Änderungen einer gespeicherten Antwort klärt ihr mit der Kita.

); }