Files
Anelia-Wolf/src/content/her-career.ts
Kenso Grimm 9725e0229d Messeseite: Hinweiszeile unter dem Absenden-Knopf entfällt dort
Auf der Messeseite stehen unter dem Knopf kein Hinweis und kein
Datenschutz-Link mehr (Kundenwunsch). Beides folgt jetzt dem Inhalt: leere
Texte in src/content/her-career.ts, keine Zeile – die Startseite bleibt
unverändert.

Rückmeldung und Rückfall-Link hängen NICHT daran. Antwortet /api/contact
nicht, erscheint auch auf der Messeseite „Das hat gerade nicht geklappt“
samt Mail-Link; dessen Betreff ist „herCAREER Expo 2026“. Das <p> bleibt
immer im Dokument, weil ein aria-live-Bereich, den es beim Absenden noch
nicht gab, von Screenreadern nicht zuverlässig vorgelesen wird.

Offen und vor dem Livegang zu entscheiden (docs/OFFENE-DATEN.md 3.17): Seit
dem Formular-Umbau überträgt das Formular an den Server, die
Datenschutzerklärung beschreibt das in Ziffer 5. Die entfernte Zeile war
damit die Information nach Art. 13 DSGVO am Ort der Erhebung; erreichbar
bleibt die Erklärung nur noch über den Fuß.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-07 22:41:54 +02:00

152 lines
7.2 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* /her-career/ Messe-Landingpage zur herCAREER Expo 2026.
*
* Diese Seite ist das Ziel des QR-Codes auf der Rückwandgrafik am Stand
* (`AneliaWolf_Rueckwandgrafik_1980x1240`). Der Code zeigt auf
* `https://her-career.anelia-wolf.com` die Adresse ist gedruckt und damit
* unveränderlich; wie die Subdomain diese Datei ausliefert, steht in
* docs/SUBDOMAIN-HERCAREER.md.
*
* Wer hier landet, steht mit dem Handy am Stand. Deshalb ist die Seite kurz und
* beantwortet in dieser Reihenfolge: Wo bin ich, was war das Special, worüber
* reden wir, wie erreiche ich dich. Alle weiterführenden Links gehen ABSOLUT auf
* die Hauptdomain ein Klick, und der Besucher ist auf anelia-wolf.com.
*
* Die vier Themenblöcke der Rückwand (Analysen, Trainings, 1:1 Coaching,
* Keynotes) liegen hier auf den drei Leistungsseiten der Website, wie in der
* Navigation: „Coaching & Analysen“ trägt die Analysen mit.
*/
import { routes, site } from "@/lib/site";
import type { Widen } from "./widen";
import { assertNoPlaceholders, collectStrings, ph } from "@/lib/legal";
import type { FactItem, Headline, TocRow } from "./home";
import { contact as contactHome, termine } from "./home";
/**
* Absolute Adresse auf der Hauptdomain. Die Seite wird unter zwei Hosts
* ausgeliefert (anelia-wolf.com/her-career/ und her-career.anelia-wolf.com);
* ein relativer Link würde auf der Subdomain in deren eigenem Pfadraum landen.
*/
const main = (path: string): string => `${site.url}${path}`;
export const herCareer = {
meta: {
title: "herCAREER Expo 2026",
/** Ohne Terminangaben stimmt auch nach der Messe (`flags.showHerCareer: false`). */
description:
"Anelia Wolf zur herCAREER Expo 2026: das Messe-Special, die Themen vom Stand und der direkte Draht zur Keynote Speakerin, Trainerin und Coach.",
/** Mit Stand und Keynote-Termin. Nur solange die Messe bevorsteht die Route wählt. */
descriptionMesse:
"Anelia Wolf auf der herCAREER Expo 2026 im MOC München: Stand P.10.2 in Halle 3, Keynote am 23.10. um 10:30 im Auditorium 2. Messe-Special, Themen und der direkte Draht.",
},
numeral: "2026",
/* Wie auf den Leistungsseiten: steht in der Inhaltsdatei, wird im Hero nicht gerendert. */
masthead: {
role: "Keynote Speakerin · Trainerin · Coach",
center: "herCAREER Expo 2026",
lang: "Deutsch & Englisch",
},
eyebrow: "herCAREER Expo 2026 · MOC München",
h1: { before: "Schön, dass du ", em: "hier", after: " bist." } satisfies Headline,
subline:
"Du hast den Code an der Rückwand gescannt. Hier steht, worüber wir am Stand sprechen das Messe-Special, meine drei Themen und der kürzeste Weg zu einem Gespräch.",
/* Kein Knopf im Hero (Kundenwunsch, 07.09.2026): Die eine Aufforderung steht im
Kontakt-Band am Fuß der Seite dort mit Mail-Betreff „herCAREER Expo 2026“. */
/* Kein Fakten-Stapel im Hero (Kundenwunsch, 07.09.2026): Stand, Messetermin und
Themen standen dort ein zweites Mal Standnummer und Termin trägt der
Termine-Ledger weiter unten, die Themen der Abschnitt „Worüber wir reden“. */
folio: { next: { label: "Messe-Special", href: "#messe-special" } },
/* ---------- 01 Messe-Special (ivory) ---------- */
special: {
id: "messe-special",
eyebrow: "Messe-Special",
h2: { before: "Dein Vorteil.", em: "", after: "" } satisfies Headline,
title: "Das Special",
/* Wortlaut kommt von Anelia (docs/OFFENE-DATEN.md, Punkt 2.7). Bis dahin stehen die
Zeilen sichtbar als „[…]“ auf der Seite, und der Build-Guard hält den Launch-Flip an. */
rows: [
{ label: "Das Angebot", value: ph("Messe-Special: Was bekommt, wer den Code scannt?") },
{ label: "Gültig bis", value: ph("Frist, z. B. Anfragen bis 30.11.2026") },
{ label: "So einlösen", value: ph("Bedingung, z. B. Stichwort in der Anfrage") },
] satisfies readonly FactItem[],
},
/* ---------- 02 Themen (ivory) ---------- */
themen: {
id: "themen",
eyebrow: "Themen",
h2: { before: "Worüber wir reden.", em: "", after: "" } satisfies Headline,
rows: [
{
numeral: "01",
title: "Coaching & Analysen",
oneLiner:
"Wer bin ich, wo stehe ich, wo will ich hin? Persönlichkeits- und Verhaltensanalyse als Grundlage, dann die Arbeit zu zweit.",
keywords: ["Potenzialanalyse", "1:1 Coaching", "Neuorientierung", "Leadership"],
link: { label: "Zum Coaching", href: main(routes.coaching) },
},
{
numeral: "02",
title: "Trainings & Workshops",
oneLiner:
"B2B-Vertriebstraining: Umsatzwachstum durch Neukundengewinnung und Bestandskundenaufbau, typgerechte Kommunikation im Team.",
keywords: ["Neukundengewinnung", "Bestandskunden", "Teamkommunikation"],
link: { label: "Zu den Trainings", href: main(routes.trainings) },
},
{
numeral: "03",
title: "Keynotes & Speaking",
oneLiner:
"Inspirierende Vorträge für Firmen-Events und Veranstaltungen Impulse, die im Gedächtnis bleiben.",
keywords: ["WOLF-Prinzip", "Mut zum Erfolg", "Deutsch & Englisch"],
link: { label: "Zu den Keynotes", href: main(routes.keynotes) },
},
] satisfies readonly TocRow[],
},
/* ---------- 03 Auf der Messe (ivory) nur mit flags.showHerCareer ---------- */
messe: {
id: "auf-der-messe",
eyebrow: "Auf der Messe",
/* Eine Quelle für beide Seiten: derselbe Ledger steht auf der Startseite. */
termine,
},
/* ---------- 04 Kontakt (ink) ---------- */
/** Ziel des Datenschutz-Links im Formular absolut, wie jeder Link von hier weg. */
privacyHref: main(routes.datenschutz),
/**
* Derselbe Block wie Sektion 06 der Startseite: Formular links, Mail, Telefon und
* LinkedIn rechts. Feldbeschriftungen, Links und Abbinder kommen unverändert von
* dort eine Quelle. Eigen sind nur die Nummer, die Überschrift und der Betreff:
* Mit „herCAREER Expo 2026“ ist im Postfach ohne Nachfrage zu sehen, welche
* Anfrage von der Messe kommt.
*/
contact: {
...contactHome,
numeral: "04",
h2: { before: "Lass uns ", em: "weiterreden", after: "." } satisfies Headline,
/* Hinweiszeile und Datenschutz-Link entfallen hier (Kundenwunsch, 07.09.2026).
Rückmeldung und Rückfall-Link beim Absenden bleiben. ACHTUNG: Seit dem Umbau
des Formulars („Kontaktformular verschickt wirklich“) gehen die Eingaben an
/api/contact die Datenschutzerklärung beschreibt das in Ziffer 5. Damit ist
der Hinweis neben dem Formular eine Information nach Art. 13 DSGVO zum
Zeitpunkt der Erhebung; erreichbar bleibt sie nur über den Fuß. Vor dem
Livegang mit Anelia klären (docs/OFFENE-DATEN.md, Punkt 3.17). */
form: { ...contactHome.form, subject: "herCAREER Expo 2026", note: "", privacy: "" },
},
} as const;
/* Build-Guard: der Launch-Flip (`flags.showPlaceholders: false`) darf keine sichtbaren
„[…]“ übrig lassen. Offene Punkte stehen in CONTENT_TODO (src/lib/legal.ts). */
assertNoPlaceholders("src/content/her-career.ts", collectStrings(herCareer));
/** Struktur, nicht Wortlaut die englische Fassung erfüllt denselben Typ. */
export type HerCareerContent = Widen<typeof herCareer>;