import { redirect } from "next/navigation"; import { aktuelleSitzung } from "@/lib/auth"; import { markeErzeugen, MARKE_GUELTIG_SEKUNDEN } from "@/lib/kiosk/anmeldemarke"; import { qrTextAlsDataUri } from "@/lib/stammdaten/qr"; import { MarkenAnzeige } from "@/app/(app)/anmeldemarke/anzeige"; export const metadata = { title: "Anmeldemarke" }; /** * Die Anmeldemarke fürs Handy. * * Wer den Ausweis vergessen hat, öffnet diese Seite und hält den QR-Code vor * die Kamera des Terminals. Der Code gilt eine Minute; die Seite erneuert ihn * von selbst. * * Erzeugt wird er auf dem Server — die Signatur entsteht mit AUTH_SECRET, und * das hat im Browser nichts verloren. */ export default async function AnmeldemarkeSeite() { const sitzung = await aktuelleSitzung(); if (!sitzung) redirect("/anmelden"); // Beides sind Selbstbedienungsseiten: Anmeldemarke und Dienstausweis gehören // einem Mitglied. Die Kreisaufsicht hat in dieser Wehr keines — und einen // Ausweis für eine Wehr, der man nicht angehört, gibt es nicht. if (!sitzung.personId) redirect("/"); const marke = markeErzeugen(sitzung.personId, sitzung.organisationId); const bild = await qrTextAlsDataUri(marke, 420); return ( ); }