39 lines
1.3 KiB
TypeScript
39 lines
1.3 KiB
TypeScript
import { CancelForm } from "@/components/booking/cancel-form";
|
|
import { SETTING_KEYS } from "@/lib/constants";
|
|
import { getSettings } from "@/lib/settings";
|
|
|
|
export const dynamic = "force-dynamic";
|
|
|
|
export default async function CancelPage({
|
|
searchParams
|
|
}: {
|
|
searchParams: Promise<{ token?: string }>;
|
|
}) {
|
|
const params = await searchParams;
|
|
const settings = await getSettings([
|
|
SETTING_KEYS.COMPANY_NAME,
|
|
SETTING_KEYS.FOOTER_PRIVACY_LABEL,
|
|
SETTING_KEYS.FOOTER_PRIVACY_URL,
|
|
SETTING_KEYS.FOOTER_IMPRINT_LABEL,
|
|
SETTING_KEYS.FOOTER_IMPRINT_URL,
|
|
SETTING_KEYS.FOOTER_COPYRIGHT_TEXT
|
|
]).catch(
|
|
() => ({} as Record<string, string>)
|
|
);
|
|
const companyName = settings[SETTING_KEYS.COMPANY_NAME] ?? "CalBook";
|
|
|
|
return (
|
|
<CancelForm
|
|
initialToken={params.token ?? ""}
|
|
companyName={companyName}
|
|
footerPrivacyLabel={settings[SETTING_KEYS.FOOTER_PRIVACY_LABEL] ?? "Datenschutz"}
|
|
footerPrivacyUrl={settings[SETTING_KEYS.FOOTER_PRIVACY_URL] ?? "/datenschutz"}
|
|
footerImprintLabel={settings[SETTING_KEYS.FOOTER_IMPRINT_LABEL] ?? "Impressum"}
|
|
footerImprintUrl={settings[SETTING_KEYS.FOOTER_IMPRINT_URL] ?? "/impressum"}
|
|
footerCopyrightText={
|
|
settings[SETTING_KEYS.FOOTER_COPYRIGHT_TEXT] ?? "© {{year}} {{companyName}}"
|
|
}
|
|
/>
|
|
);
|
|
}
|