From e6ac00b248875d74ed8cf3881c1c22532b90db36 Mon Sep 17 00:00:00 2001 From: fs Date: Mon, 14 Sep 2026 13:47:26 +0200 Subject: [PATCH] =?UTF-8?q?Turnkontakte=20zum=20Formular=20f=C3=BChren=20u?= =?UTF-8?q?nd=20Fitness-II-Zeit=20aktualisieren?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/components/contact-form.php | 4 ++++ app/components/group-schedule.php | 8 ++++++-- app/pages/turnen-eltern-kind.php | 1 + app/pages/turnen-erwachsenenturnen.php | 1 + app/pages/turnen-fitness-pilates.php | 1 + app/pages/turnen-wettkampfturnen.php | 1 + app/pages/turnen.php | 1 + data/turnen.json | 2 +- 8 files changed, 16 insertions(+), 3 deletions(-) diff --git a/app/components/contact-form.php b/app/components/contact-form.php index 9679956..cb729bb 100644 --- a/app/components/contact-form.php +++ b/app/components/contact-form.php @@ -6,6 +6,7 @@ declare(strict_types=1); * Kontaktformular (Felder wie auf der alten Seite). Props: * $intro array{title, text}|null — optionaler Intro-Block (Überschrift, Teaser, Direkt-Mail). * Weglassen → nur das Formular (z. B. auf /kontakt, wo der Hero den Kontext liefert). + * $showDirectMail bool (optional, Default true) — Direkt-Mail im Intro anzeigen. * $return string optional — Slug der absendenden Seite (Default '' = Startseite). Die Action * leitet nach PRG hierher zurück (whitelist-validiert), damit /kontakt nicht auf die * Startseite springt. @@ -30,6 +31,7 @@ declare(strict_types=1); $club = json_load('club'); $return = $return ?? ''; $intro = $intro ?? null; +$showDirectMail = $showDirectMail ?? true; $notice = $notice ?? ''; $noticeTitle = $noticeTitle ?? ''; $noticeTone = $noticeTone ?? 'info'; @@ -79,7 +81,9 @@ $f = [

+

Oder direkt per Mail an

+
diff --git a/app/components/group-schedule.php b/app/components/group-schedule.php index dcfe0ef..fd5da48 100644 --- a/app/components/group-schedule.php +++ b/app/components/group-schedule.php @@ -9,6 +9,7 @@ declare(strict_types=1); * $contactEmail string (optional) — persönliche E-Mail der Ansprechperson für die * Kontakt-Kachel. Überschreibt die Abteilungs-Mail (club.email_turnen), falls * gesetzt — genutzt, wenn eine Disziplin einen eigenen direkten Draht angibt. + * $contactHref string (optional) — Formular-Link statt E-Mail-Link in der Kontakt-Kachel. * $contactPhone string (optional) — Telefonnummer der Ansprechperson (Anzeige-Form). Ergibt * einen zusätzlichen tel:-Link in der Kontakt-Kachel. tel:-Href wie in person-card.php. * $notice string (optional) — hervorgehobener Hinweis (z. B. Wartelisten-Status) @@ -54,6 +55,7 @@ $groupsTitleHidden = $groupsTitleHidden ?? false; $layout = ($layout ?? 'tabs') === 'stacked' ? 'stacked' : 'tabs'; $lead = $lead ?? ''; $contactEmail = $contactEmail ?? ''; +$contactHref = $contactHref ?? ''; $contactPhone = $contactPhone ?? ''; $notice = $notice ?? ''; $noticeTitle = $noticeTitle ?? ''; @@ -230,13 +232,15 @@ $soleNote = $single ? ($groups[0]['note'] ?? '') : ''; - +
Kontakt - + + Zum Kontaktformular + E-Mail schreiben diff --git a/app/pages/turnen-eltern-kind.php b/app/pages/turnen-eltern-kind.php index e01bb77..c6ca5ce 100644 --- a/app/pages/turnen-eltern-kind.php +++ b/app/pages/turnen-eltern-kind.php @@ -25,6 +25,7 @@ $meta = [ component('hero', ['hero' => $d['hero']]); component('group-schedule', [ + 'contactHref' => url('turnen') . '#kontakt', 'location' => $d['location'] ?? [], 'lead' => $d['lead'] ?? '', 'notice' => $d['notice'] ?? '', diff --git a/app/pages/turnen-erwachsenenturnen.php b/app/pages/turnen-erwachsenenturnen.php index 7313d70..d6cb51e 100644 --- a/app/pages/turnen-erwachsenenturnen.php +++ b/app/pages/turnen-erwachsenenturnen.php @@ -22,6 +22,7 @@ $meta = [ component('hero', ['hero' => $d['hero']]); component('group-schedule', [ + 'contactHref' => url('turnen') . '#kontakt', 'location' => $d['location'] ?? [], 'lead' => $d['lead'] ?? '', 'groups' => $d['groups'] ?? [], diff --git a/app/pages/turnen-fitness-pilates.php b/app/pages/turnen-fitness-pilates.php index d7e8013..4230bc2 100644 --- a/app/pages/turnen-fitness-pilates.php +++ b/app/pages/turnen-fitness-pilates.php @@ -29,6 +29,7 @@ $meta = [ component('hero', ['hero' => $d['hero']]); component('group-schedule', [ + 'contactHref' => url('turnen') . '#kontakt', 'groupsTitle' => 'Unsere Kurse', 'location' => $d['location'] ?? [], 'lead' => $d['lead'] ?? '', diff --git a/app/pages/turnen-wettkampfturnen.php b/app/pages/turnen-wettkampfturnen.php index f896568..b753a24 100644 --- a/app/pages/turnen-wettkampfturnen.php +++ b/app/pages/turnen-wettkampfturnen.php @@ -28,6 +28,7 @@ $meta = [ component('hero', ['hero' => $d['hero']]); component('group-schedule', [ + 'contactHref' => url('turnen') . '#kontakt', 'location' => $d['location'] ?? [], 'lead' => $d['lead'] ?? '', 'groups' => $d['groups'] ?? [], diff --git a/app/pages/turnen.php b/app/pages/turnen.php index 2690a1a..c003c8a 100644 --- a/app/pages/turnen.php +++ b/app/pages/turnen.php @@ -119,6 +119,7 @@ component('faq', ['faq' => $page['faq'] ?? []]); (disciplines.eltern-kind-turnen.notice), ein Hinweis und eine Quelle. */ $kinderturnen = json_load('turnen')['disciplines']['eltern-kind-turnen'] ?? []; component('contact-form', [ + 'showDirectMail' => false, 'intro' => $page['contact'], 'return' => 'turnen', 'department' => 'turnen', diff --git a/data/turnen.json b/data/turnen.json index 0acfea3..b087097 100644 --- a/data/turnen.json +++ b/data/turnen.json @@ -192,7 +192,7 @@ { "heading": "Was dich erwartet", "text": "Dich erwartet ein abwechslungsreicher Mix aus Pilates, Mobility, funktionellem Krafttraining und Bodyweight-Übungen. Je nach Schwerpunkt kommen auch Kleingeräte wie Kurzhanteln oder Pilates-Bälle zum Einsatz." }, { "heading": "Im Mittelpunkt", "text": "Stabilität, Balance und absolute Körperkontrolle. Alle Übungen lassen sich flexibel an dein individuelles Trainingslevel anpassen, für mehr Kraft, Beweglichkeit und ein rundum gutes Körpergefühl." } ], - "sessions": [ { "day": "Donnerstag", "time": "abends", "note": "Die genaue Uhrzeit geben wir in Kürze bekannt." } ], + "sessions": [ { "day": "Donnerstag", "time": "19:30–20:30 Uhr" } ], "trainers": ["Karola Lorz", "Eva Wünsch"] } ]