diff --git a/scripts/preflight.ts b/scripts/preflight.ts index 4abe48c..476e27f 100644 --- a/scripts/preflight.ts +++ b/scripts/preflight.ts @@ -239,10 +239,15 @@ try { `Noch offen: ${withPlaceholder.join(", ")}. Im Admin-Bereich unter "Inhalte" pflegbar — kein Deploy noetig. Ein unvollstaendiges Impressum nach § 5 TMG ist in Deutschland abmahnfaehig: Name, Rechtsform und Umsatzsteuer-ID bzw. der Hinweis auf § 19 UStG muessen eingetragen sein.` ); + // Ein LEERES Feld ist ausdruecklich in Ordnung und loest keine Warnung aus: + // ohne gepflegte Nummer entfaellt die Zeile auf der Kontaktseite und im + // Impressum einfach (siehe lib/site-config.ts). Gemeldet wird nur eine + // tatsaechlich eingetragene Platzhalternummer — die sieht nach einem + // Kontaktweg aus, an dessen Ende niemand abnimmt. should( "Telefonnummer ist keine Platzhalternummer", !(await getContentValue("company.phone", "de")).includes("000 000000"), - 'Sichtbar im Footer, auf der Kontaktseite und im Impressum. Im Admin-Bereich unter "Inhalte" pflegbar.' + 'Eingetragen ist eine Platzhalternummer. Entweder die echte Nummer eintragen oder das Feld LEEREN — dann entfaellt die Angabe ueberall. Im Admin-Bereich unter "Inhalte" pflegbar.' ); } catch (error: unknown) { // Bewusst KEIN Blocker und KEIN stilles Bestehen: ohne Datenbank laesst diff --git a/src/app/impressum/page.tsx b/src/app/impressum/page.tsx index cdb3026..e470195 100644 --- a/src/app/impressum/page.tsx +++ b/src/app/impressum/page.tsx @@ -28,7 +28,15 @@ export default async function ImpressumPage() { }, { heading: t.impressumPage.contactHeading, - paragraphs: [`${t.impressumPage.phoneLabel}: ${company.phone}`, `${t.impressumPage.emailLabel}: ${company.email}`], + // Die Telefonzeile nur, wenn eine Nummer gepflegt ist. § 5 TMG + // verlangt eine Moeglichkeit zur unmittelbaren Kontaktaufnahme, + // nicht zwingend ein Telefon — die E-Mail-Adresse erfuellt das. + // Eine Platzhalternummer im Impressum waere dagegen eine Angabe, + // die ins Leere fuehrt. + paragraphs: [ + ...(company.phone ? [`${t.impressumPage.phoneLabel}: ${company.phone}`] : []), + `${t.impressumPage.emailLabel}: ${company.email}`, + ], }, ustSection, redaktionSection, diff --git a/src/app/kontakt/page.tsx b/src/app/kontakt/page.tsx index 18611ae..633a9f7 100644 --- a/src/app/kontakt/page.tsx +++ b/src/app/kontakt/page.tsx @@ -35,7 +35,10 @@ export default async function KontaktPage() { {company.email}

-

{company.phone}

+ {/* Ohne gepflegte Nummer entfaellt die Zeile ganz. Eine + Platzhalternummer waere schlimmer als keine: sie sieht nach + einem Kontaktweg aus, an dessen Ende niemand abnimmt. */} + {company.phone ?

{company.phone}

: null} diff --git a/src/lib/site-config.ts b/src/lib/site-config.ts index 8e5b85e..ed083a5 100644 --- a/src/lib/site-config.ts +++ b/src/lib/site-config.ts @@ -1,8 +1,8 @@ // Zentrale, austauschbare Inhalte fuer Navigation, Footer und Firmendaten. -// email/phone sind noch keine echten Kontaktdaten (auf dem Etikett nicht -// abgebildet) und muessen vor dem Live-Gang ersetzt werden — bewusst ohne -// sichtbaren "[PLATZHALTER]"-Text im String, da dieser sonst 1:1 im Footer -// und auf der Kontaktseite mitgerendert wuerde. +// email ist noch keine echte Kontaktadresse (auf dem Etikett nicht abgebildet) +// und muss vor dem Live-Gang ersetzt werden — bewusst ohne sichtbaren +// "[PLATZHALTER]"-Text im String, da dieser sonst 1:1 im Footer und auf der +// Kontaktseite mitgerendert wuerde. export const categoryLabels = { HONIG: "Honig", @@ -19,7 +19,18 @@ export const siteConfig = { "Entdecke hochwertigen Honig aus eigener Imkerei in Altenmünster. Kleine Ernten, klare Herkunft und echtes Imkerhandwerk.", location: "Altenmünster, Bayern", email: "hallo@wabenhain.com", - phone: "+49 (0) 000 000000", + /** + * Leer, und das ist die Vorgabe: eine Telefonnummer ist keine Pflichtangabe. + * § 5 TMG verlangt eine Moeglichkeit zur unmittelbaren Kontaktaufnahme — + * die E-Mail-Adresse erfuellt das. + * + * Frueher stand hier eine Platzhalternummer ("+49 (0) 000 000000"). Wer im + * Admin-Bereich keine Nummer pflegte, bekam sie auf der Kontaktseite und im + * Impressum tatsaechlich angezeigt — eine Nummer, unter der niemand zu + * erreichen ist, ist schlimmer als gar keine. Bleibt das Feld leer, wird die + * Zeile jetzt ueberall weggelassen (kontakt/page.tsx, impressum/page.tsx). + */ + phone: "", address: { street: "Buhlweg 10", zip: "86450",