import { redirect } from "next/navigation"; import { UserRole } from "@prisma/client"; import { requireSession } from "@/lib/auth-utils"; import { prisma } from "@/lib/prisma"; import { Card, CardContent, CardDescription, CardHeader, CardTitle, } from "@/components/ui/card"; export const metadata = { title: "Datenschutz-Einwilligung · Kita-Planer" }; // Diese Seite wird nur in einem sehr seltenen Edge-Case erreicht: // Ein User mit kitaId hat noch kein `privacyPolicyAcceptedAt` gesetzt // (z.B. über einen alten Seed oder manuellen DB-Eintrag). // Im normalen Registrierungs-Flow wird die Einwilligung bereits // in registerAction() zum Zeitpunkt der Kontoerstellung erfasst. export default async function ConsentPage() { const session = await requireSession(); // SUPERADMIN benötigt keinen Consent-Flow — hat keinen Kita-Kontext. if (session.user.role === UserRole.SUPERADMIN) { redirect("/admin"); } // User ohne kitaId gehört in den Onboarding-Wizard. if (!session.user.kitaId) { redirect("/onboarding"); } // Prüfen, ob der Consent wirklich fehlt (DB-seitiger Check). const user = await prisma.user.findUnique({ where: { id: session.user.id }, select: { privacyPolicyAcceptedAt: true }, }); // Consent bereits vorhanden → weiter ins Dashboard. if (user?.privacyPolicyAcceptedAt) { redirect("/dashboard"); } return (
Falls du glaubst, dass dies ein Fehler ist, kontaktiere bitte{" "} support@kita-planer.de .