From 33fbdbc18a965fda130dd3f6111f26fec4bb7ce5 Mon Sep 17 00:00:00 2001 From: Daniel Heim Date: Tue, 9 Jun 2026 12:58:13 +0200 Subject: [PATCH] =?UTF-8?q?Kontaktformular:=20sendet=20an=20Directus=20(Fl?= =?UTF-8?q?ow=20=E2=86=92=20Mail=20an=20den=20Verein)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Formular POSTet an die öffentliche Directus-Collection contact_messages (Name, E-Mail, Betreff, Nachricht) + Honeypot gegen Spam + Sende-/Fehler-Status mit mailto-Fallback. Öffentliche CMS-URL hartkodiert (Build-Env wäre die interne Docker-Adresse). - Datenschutz §5 angepasst: Formular speichert jetzt in selbstgehostetem Directus und benachrichtigt den Vorstand per Mail (statt mailto). Co-Authored-By: Claude Opus 4.8 (1M context) --- src/pages/datenschutz.astro | 9 ++-- src/pages/kontakt.astro | 92 +++++++++++++++++++++++++++++++------ 2 files changed, 84 insertions(+), 17 deletions(-) diff --git a/src/pages/datenschutz.astro b/src/pages/datenschutz.astro index e560458..49967e7 100644 --- a/src/pages/datenschutz.astro +++ b/src/pages/datenschutz.astro @@ -91,7 +91,7 @@ const settings = await getSettings();
-

5. Kontaktaufnahme per E-Mail

+

5. Kontaktaufnahme per E-Mail und Formular

Wenn du uns per E-Mail kontaktierst, werden deine Angaben (E-Mail-Adresse, ggf. Name und Nachrichteninhalt) zum Zweck der Bearbeitung deiner Anfrage @@ -104,8 +104,11 @@ const settings = await getSettings(); Aufbewahrungspflichten entgegenstehen.

- Das Kontaktformular auf dieser Website funktioniert als mailto-Link — es werden - keine Formulardaten auf unseren Servern gespeichert oder verarbeitet. + Das Kontaktformular übermittelt deine Angaben (Name, E-Mail, Betreff, Nachricht) an + unser selbst gehostetes Redaktionssystem (Directus, Server in Deutschland) und + benachrichtigt den Vorstand per E-Mail. Die Daten werden ausschließlich zur Bearbeitung + deiner Anfrage verwendet, nicht an Dritte weitergegeben und nach Erledigung gelöscht, + soweit keine gesetzlichen Aufbewahrungspflichten bestehen.

diff --git a/src/pages/kontakt.astro b/src/pages/kontakt.astro index e0a5ba1..7b9d788 100644 --- a/src/pages/kontakt.astro +++ b/src/pages/kontakt.astro @@ -4,6 +4,10 @@ import PageHeader from "../components/PageHeader.astro"; import { getSettings } from "../lib/directus"; const settings = await getSettings(); +// Öffentliche CMS-URL für den Browser-Fetch — NICHT import.meta.env.DIRECTUS_URL, +// das ist beim Build (im Rebuild-Container) die interne Docker-Adresse. +const cmsPublicUrl = "https://cms.kitafreunde-regenbogen.de"; +const contactEmail = settings?.contact_email ?? "info@kitafreunde-regenbogen.de"; --- @@ -54,39 +58,99 @@ const settings = await getSettings(); )} - +

Direkte Nachricht

-

- Dieses Formular öffnet deinen E-Mail-Client. -

+
+
+ + +
+
+ + +
+
- - - +
- -
- +
+ +