Interessentinnen sollen ohne Buchung ein unverbindliches Erstgespräch anfragen können. Die Anfrage landet beim Veranstalter.
Umgesetzt
Abschnitt „Erstgespräch“ nach den Fragen, im Menü verlinkt; POST /api/contact (7745d58, 06.10.2026)
Telefonnummer ist Pflicht, gleiche Prüfung wie bei der Buchung (a47e91e, 07.10.2026)
Zustellung als E-Mail über den Postausgang an die Veranstalter-E-Mail (Admin), ersatzweise ADMIN_NOTIFY_EMAIL; ohne Empfänger lehnt das Formular ab
Schutz: nur JSON von der eigenen Seite, 5 Anfragen je Stunde und IP, Honeypot, doppeltes Absenden ergibt eine Mail, keine automatische Mail an die angegebene Adresse
Tests tests/contact.integration.test.ts
Offen
Hinweistext auf /datenschutz nennt die Telefonnummer noch als optional: #25
Leads werden nicht gespeichert und nicht an ein CRM übergeben (Artista nutzt HubSpot im Repo Artista-TeleTracking). Ob Anfragen dorthin fließen sollen, ist nicht entschieden (siehe #29)
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main 9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)
## Ziel
Interessentinnen sollen ohne Buchung ein unverbindliches Erstgespräch anfragen können. Die Anfrage landet beim Veranstalter.
## Umgesetzt
- [x] Abschnitt „Erstgespräch“ nach den Fragen, im Menü verlinkt; `POST /api/contact` (`7745d58`, 06.10.2026)
- [x] Telefonnummer ist Pflicht, gleiche Prüfung wie bei der Buchung (`a47e91e`, 07.10.2026)
- [x] Zustellung als E-Mail über den Postausgang an die Veranstalter-E-Mail (Admin), ersatzweise `ADMIN_NOTIFY_EMAIL`; ohne Empfänger lehnt das Formular ab
- [x] Schutz: nur JSON von der eigenen Seite, 5 Anfragen je Stunde und IP, Honeypot, doppeltes Absenden ergibt eine Mail, keine automatische Mail an die angegebene Adresse
- [x] Tests `tests/contact.integration.test.ts`
## Offen
- [ ] Hinweistext auf `/datenschutz` nennt die Telefonnummer noch als optional: #25
- [ ] Leads werden nicht gespeichert und nicht an ein CRM übergeben (Artista nutzt HubSpot im Repo `Artista-TeleTracking`). Ob Anfragen dorthin fließen sollen, ist nicht entschieden (siehe #29)
## Grundlage
`docs/ARCHITEKTUR.md` (ADR-8), `src/lib/contact.ts`, `src/components/sections/ContactSection.tsx`.
## Status
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main 9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Ziel
Interessentinnen sollen ohne Buchung ein unverbindliches Erstgespräch anfragen können. Die Anfrage landet beim Veranstalter.
Umgesetzt
POST /api/contact(7745d58, 06.10.2026)a47e91e, 07.10.2026)ADMIN_NOTIFY_EMAIL; ohne Empfänger lehnt das Formular abtests/contact.integration.test.tsOffen
/datenschutznennt die Telefonnummer noch als optional: #25Artista-TeleTracking). Ob Anfragen dorthin fließen sollen, ist nicht entschieden (siehe #29)Grundlage
docs/ARCHITEKTUR.md(ADR-8),src/lib/contact.ts,src/components/sections/ContactSection.tsx.Status
Code: ja · Geprüft: ja · Gemergt: ja · Produktiv: ja (im Cluster belegt ausgerollt sha-5a88f3d am 13.10.2026)
Stand: 2026-10-16 (Quelle: git origin/main
9785eb2, Gitea-CI-Läufe und Registry, Memory der Sessions)