Replaces em dashes with en dashes across all hardcoded copy, emails, and seed content, then reworks the site's visual language so it reads as deliberately designed rather than assembled from generic components: - New ArrowLink component replaces ad hoc "Mehr erfahren ->" links and ghost buttons; one shared FormField (TextField/TextAreaField) replaces 7 near-duplicate field styles across every form - Navbar loses its glassmorphism blur for a solid warm background, gets a subtle active-link underline and a softer, warmer mega-menu - PageHeader supports per-page blob tone/position and a compact mode instead of an identical band on every interior page - Homepage: the core offer is featured large instead of four equal cards, the philosophy section gets a single calmer accent blob, blog teasers now show their cover image like the real /aktuelles page does - Booking calendar and widget: 44px touch targets throughout (month nav, day cells, time slots, cancel action), a visible "today" ring, and responsive padding so the calendar isn't cramped on small screens - Quieter, warmer empty states on /termine and /aktuelles No functional changes: all interaction logic (nav menus, forms, booking, CMS data fetching) is untouched, only markup and styling.
77 lines
3.2 KiB
TypeScript
77 lines
3.2 KiB
TypeScript
import type { Metadata } from "next";
|
||
import { PageHeader } from "@/components/PageHeader";
|
||
import { Section } from "@/components/Section";
|
||
import { PlaceholderNote } from "@/components/PlaceholderNote";
|
||
import { getContactGlobal } from "@/lib/payload/globals";
|
||
import { getSiteUrl } from "@/lib/seo/config";
|
||
|
||
export const dynamic = "force-dynamic";
|
||
|
||
export async function generateMetadata(): Promise<Metadata> {
|
||
const siteUrl = await getSiteUrl();
|
||
return {
|
||
title: "Datenschutz",
|
||
description: "Datenschutzerklärung von Anouma.",
|
||
robots: { index: false, follow: true },
|
||
alternates: { canonical: `${siteUrl}/datenschutz` },
|
||
};
|
||
}
|
||
|
||
export default async function DatenschutzPage() {
|
||
const contact = await getContactGlobal();
|
||
return (
|
||
<>
|
||
<PageHeader title="Datenschutzerklärung" crumbs={[{ title: "Datenschutz" }]} compact />
|
||
<Section tone="plain">
|
||
<div className="mx-auto max-w-2xl space-y-8">
|
||
<PlaceholderNote>
|
||
Diese Seite ist eine strukturelle Vorlage. Bitte die Angaben zu verantwortlicher Stelle,
|
||
Hosting, eingesetzten Diensten und Cookies mit den tatsächlich genutzten Tools ergänzen
|
||
und rechtlich prüfen lassen, bevor die Seite live geht.
|
||
</PlaceholderNote>
|
||
|
||
<div>
|
||
<h2 className="font-serif text-2xl font-medium text-anouma-plum">Verantwortliche Stelle</h2>
|
||
<p className="mt-4 leading-relaxed text-anouma-plum">
|
||
[Platzhalter – Vor- und Nachname]
|
||
<br />
|
||
[Platzhalter – Anschrift]
|
||
<br />
|
||
E-Mail: {contact.email}
|
||
</p>
|
||
</div>
|
||
|
||
<div>
|
||
<h2 className="font-serif text-2xl font-medium text-anouma-plum">
|
||
Erhebung und Speicherung personenbezogener Daten
|
||
</h2>
|
||
<p className="mt-4 leading-relaxed text-anouma-plum">
|
||
Beim Besuch dieser Website werden aus technischen Gründen automatisch Informationen
|
||
erfasst, die dein Browser übermittelt (z. B. IP-Adresse, Datum und Uhrzeit des
|
||
Zugriffs). [Platzhalter – Details zum verwendeten Hosting-Anbieter ergänzen.]
|
||
</p>
|
||
</div>
|
||
|
||
<div>
|
||
<h2 className="font-serif text-2xl font-medium text-anouma-plum">Kontaktformular</h2>
|
||
<p className="mt-4 leading-relaxed text-anouma-plum">
|
||
Wenn du uns per Formular oder E-Mail Anfragen zukommen lässt, werden deine Angaben aus
|
||
dem Formular inklusive der von dir dort angegebenen Kontaktdaten zwecks Bearbeitung der
|
||
Anfrage bei uns gespeichert. Diese Daten geben wir nicht ohne deine Einwilligung weiter.
|
||
</p>
|
||
</div>
|
||
|
||
<div>
|
||
<h2 className="font-serif text-2xl font-medium text-anouma-plum">Deine Rechte</h2>
|
||
<p className="mt-4 leading-relaxed text-anouma-plum">
|
||
Du hast jederzeit das Recht auf Auskunft, Berichtigung, Löschung und Einschränkung der
|
||
Verarbeitung deiner gespeicherten personenbezogenen Daten sowie ein Recht auf
|
||
Datenübertragbarkeit und Widerspruch. Wende dich hierzu gerne an {contact.email}.
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</Section>
|
||
</>
|
||
);
|
||
}
|