From 63a045835e574c3e8b0d8cbb4a98475a95262003 Mon Sep 17 00:00:00 2001 From: fs Date: Fri, 31 Jul 2026 22:26:37 +0200 Subject: [PATCH] =?UTF-8?q?Austritt=20Turnen:=20K=C3=BCndigung=20darf=20fo?= =?UTF-8?q?rmlos=20per=20Mail=20kommen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Rückmeldung der Turnabteilung. Der Austritt-Block auf /turnen nannte bisher nur die Schriftform und die Frist zum 30. September, nicht aber, wohin die Kündigung geht. Die Adresse steht wie überall ausschließlich in club.json (email_turnen), der Satz in turnen.json markiert ihre Stelle nur mit {mail} — dasselbe Muster wie der Material-Aufruf auf /historie. Ersetzt wird nach inline_links_html(), damit der Fließtext escaped bleibt und nur der Platzhalter zu einem mailto-Link wird. Co-Authored-By: Claude Opus 5 (1M context) Claude-Session: https://claude.ai/code/session_01RWoqDYuANFbJDGFQAgaRdT --- app/pages/turnen.php | 13 ++++++++++++- data/turnen.json | 2 +- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/app/pages/turnen.php b/app/pages/turnen.php index 5c75a4c..aa4246f 100644 --- a/app/pages/turnen.php +++ b/app/pages/turnen.php @@ -29,6 +29,17 @@ declare(strict_types=1); */ $page = json_load('turnen')['overview']; +// Die Kündigung darf formlos per Mail kommen (Turnabteilung, 31.07.2026). Die Adresse +// steht ausschließlich in club.json — der Austritt-Text in turnen.json markiert ihre +// Stelle mit {mail}, dasselbe Muster wie der Material-Aufruf auf /historie. Ersetzt +// wird NACH inline_links_html(): so bleibt der Fließtext escaped und nur der Platzhalter +// wird zu HTML. Umgekehrt käme der fertige Link escaped als Text auf die Seite. +$mailTurnen = json_load('club')['email_turnen']; +$austrittText = strtr( + inline_links_html($page['austritt']['text'] ?? ''), + ['{mail}' => '' . e($mailTurnen) . ''] +); + // Heros aller Turn-Seiten zeigen VORÜBERGEHEND das Drohnen-Luftbild des // Vereinsgeländes (img/pages/vereinsgelaende, Quelle: data/turnen.json) statt des // Fußballplatz-Bildes. Ehrlicher wäre ein Bild aus der Turnhalle — liegt eines @@ -87,7 +98,7 @@ component('team-cards', [

-

+

diff --git a/data/turnen.json b/data/turnen.json index 41950fe..687f74f 100644 --- a/data/turnen.json +++ b/data/turnen.json @@ -45,7 +45,7 @@ ], "austritt": { "title": "Austritt", - "text": "Der Austritt aus dem Verein ist nur zum Ende eines Kalenderjahres möglich und muss bis spätestens 30. September schriftlich erklärt werden. Der Beitrag ist in jedem Fall bis zum Jahresende zu entrichten." + "text": "Der Austritt aus dem Verein ist nur zum Ende eines Kalenderjahres möglich und muss bis spätestens 30. September schriftlich erklärt werden. Die Kündigung kannst du formlos per E-Mail an {mail} schicken. Der Beitrag ist in jedem Fall bis zum Jahresende zu entrichten." }, "faq": [ { "q": "Welche Turngruppen gibt es beim TSV 08 Kulmbach?", "a": "Eltern-Kind- und Kinderturnen, Erwachsenenturnen, Fitness und Pilates, Trampolinturnen sowie Wettkampfturnen, von den Jüngsten ab 2 Jahren bis zu Erwachsenen." },