import type { Metadata } from 'next' import { redirect } from 'next/navigation' import { AnmeldeFormular } from '@/app/anmelden/anmelde-formular' import { INSTANZ_NAME } from '@/lib/instanz' import { versionAnzeige } from '@/lib/version' import { angemeldet } from '@/server/berechtigung' import { aktuelleInstanz } from '@/server/instanz' import { umgebung } from '@/server/umgebung' export const metadata: Metadata = { title: 'Anmelden' } /** Nur Pfade innerhalb der App sind als Ziel erlaubt – keine fremden Adressen. */ function sicheresZiel(weiter: string | undefined): string { if (!weiter) return '/' if (!weiter.startsWith('/') || weiter.startsWith('//')) return '/' return weiter } export default async function AnmeldeSeite({ searchParams, }: { searchParams: Promise<{ weiter?: string; error?: string }> }) { const parameter = await searchParams const ziel = sicheresZiel(parameter.weiter) if (await angemeldet()) { redirect(ziel) } const einst = umgebung() const instanz = aktuelleInstanz() return (

Planer

{INSTANZ_NAME[instanz]}

{versionAnzeige()}

) }