Trampolin: echte Trainingszeiten, Trainerinnen und Kontakt vom Hallen-Aushang
Drei Karten nach Zielgruppe (Kinder+Erwachsene Mo, Kinder ab 5 Do, Kinder ab 10 und Fortgeschrittene Do) mit Tag/Zeit und Trainerteam je Session, Schnupper-Hinweis auf "nach Absprache" umgestellt, Fußnote zu den Schulferien. group-schedule bekommt zwei optionale Props (contactEmail/contactPhone) fuer Tinas persoenlichen Kontakt in der Kontaktkachel (tel:-Muster wie person-card, keine neue CSS-Regel). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HXDvgRDHQ9iGjs4KCXykEj
This commit is contained in:
@@ -6,6 +6,11 @@ declare(strict_types=1);
|
||||
* Turn-Disziplin im einheitlichen Bento-Look (wie die Mannschaftsseiten). Props:
|
||||
* $location array{venue, street?, zip?, city?} (optional) — Trainingsort + „Route planen"
|
||||
* $lead string (optional) — Ansprechperson der Disziplin (Akzent-Kachel)
|
||||
* $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.
|
||||
* $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)
|
||||
* $noticeTitle string (optional) — Überschrift dazu
|
||||
* $noticeTone 'info' (Default) | 'stop' — Tonlage, siehe components/notice.php
|
||||
@@ -42,6 +47,8 @@ $groupsTitle = $groupsTitle ?? 'Unsere Gruppen';
|
||||
$groupsTitleHidden = $groupsTitleHidden ?? false;
|
||||
$layout = ($layout ?? 'tabs') === 'stacked' ? 'stacked' : 'tabs';
|
||||
$lead = $lead ?? '';
|
||||
$contactEmail = $contactEmail ?? '';
|
||||
$contactPhone = $contactPhone ?? '';
|
||||
$notice = $notice ?? '';
|
||||
$noticeTitle = $noticeTitle ?? '';
|
||||
$noticeTone = $noticeTone ?? 'info';
|
||||
@@ -55,7 +62,8 @@ if ($groups === []) {
|
||||
}
|
||||
|
||||
$club = json_load('club');
|
||||
$email = $club['email_turnen'] ?? ($club['email'] ?? '');
|
||||
$email = $contactEmail !== '' ? $contactEmail : ($club['email_turnen'] ?? ($club['email'] ?? ''));
|
||||
$telHref = $contactPhone !== '' ? 'tel:' . preg_replace('/[^+\d]/', '', $contactPhone) : '';
|
||||
|
||||
$single = count($groups) === 1;
|
||||
$rich = false;
|
||||
@@ -185,7 +193,7 @@ $soleNote = $single ? ($groups[0]['note'] ?? '') : '';
|
||||
</article>
|
||||
<?php endif; ?>
|
||||
|
||||
<?php if ($lead !== '' || $email !== ''): ?>
|
||||
<?php if ($lead !== '' || $email !== '' || $telHref !== ''): ?>
|
||||
<article class="bento__tile bento__tile--accent turnen-dash__contact">
|
||||
<span class="bento__stat-label">Kontakt</span>
|
||||
<?php if ($lead !== ''): ?>
|
||||
@@ -193,6 +201,9 @@ $soleNote = $single ? ($groups[0]['note'] ?? '') : '';
|
||||
<?php endif; ?>
|
||||
<?php if ($email !== ''): ?>
|
||||
<a class="turnen-dash__mail" href="mailto:<?= e($email) ?>"><?= icon('envelope', 'turnen-dash__mail-icon') ?>E-Mail schreiben</a>
|
||||
<?php endif; ?>
|
||||
<?php if ($telHref !== ''): ?>
|
||||
<a class="turnen-dash__mail" href="<?= e($telHref) ?>"><?= icon('telephone', 'turnen-dash__mail-icon') ?><?= e($contactPhone) ?></a>
|
||||
<?php endif; ?>
|
||||
</article>
|
||||
<?php endif; ?>
|
||||
|
||||
@@ -24,9 +24,12 @@ component('hero', ['hero' => $d['hero']]);
|
||||
component('group-schedule', [
|
||||
'location' => $d['location'] ?? [],
|
||||
'lead' => $d['lead'] ?? '',
|
||||
'contactEmail' => $d['contact_email'] ?? '',
|
||||
'contactPhone' => $d['contact_phone'] ?? '',
|
||||
'notice' => $d['notice'] ?? '',
|
||||
'noticeTitle' => $d['notice_title'] ?? '',
|
||||
'noticeTone' => $d['notice_tone'] ?? 'info',
|
||||
'noticeIcon' => $d['notice_icon'] ?? 'info-circle',
|
||||
'groups' => $d['groups'] ?? [],
|
||||
'footnote' => $d['footnote'] ?? '',
|
||||
]);
|
||||
|
||||
@@ -188,18 +188,30 @@
|
||||
},
|
||||
"location": { "venue": "Dreifachturnhalle der Carl-von-Linde-Realschule", "city": "Kulmbach" },
|
||||
"lead": "Tina Kornatz",
|
||||
"contact_email": "tina.kornatz@gmx.de",
|
||||
"contact_phone": "0163 6032410",
|
||||
"footnote": "In den Schulferien findet kein Training statt.",
|
||||
"notice_icon": "calendar-event",
|
||||
"notice_title": "Schnuppern ab September",
|
||||
"notice": "Mit dem Schulbeginn im September können neue Kinder bei uns gerne zum Schnuppern vorbeikommen. Schreib uns davor einfach kurz eine Nachricht, dann sagen wir dir, wann es am besten passt.",
|
||||
"notice_title": "Schnuppern nach Absprache",
|
||||
"notice": "Schnuppertraining ist bei uns jederzeit nach vorheriger Absprache möglich. Melde dich davor einfach kurz bei Tina, dann finden wir einen passenden Termin.",
|
||||
"groups": [
|
||||
{
|
||||
"name": "Trampolinturnen",
|
||||
"name": "Kinder und Erwachsene",
|
||||
"sessions": [
|
||||
{ "day": "Montag", "time": "17:30 / 18:00–20:30 Uhr" },
|
||||
{ "day": "Donnerstag", "time": "17:30 / 18:00–20:30 Uhr" }
|
||||
],
|
||||
"note": "Der Einstieg erfolgt gestaffelt um 17:30 bzw. 18:00 Uhr.",
|
||||
"trainers": []
|
||||
{ "day": "Montag", "time": "17:30–19:30 / 20:30 Uhr", "trainers": ["Sabine Hofmann"] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Kinder ab 5 Jahren",
|
||||
"sessions": [
|
||||
{ "day": "Donnerstag", "time": "17:30–19:00 Uhr", "trainers": ["Michaela Bollingerfehr"] }
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Kinder ab 10 Jahren und Fortgeschrittene",
|
||||
"sessions": [
|
||||
{ "day": "Donnerstag", "time": "18:00–20:30 Uhr", "trainers": ["Tina Kornatz", "Laura Ramming", "Christa Ramming"] }
|
||||
]
|
||||
}
|
||||
]
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user