Streamplan-Seite: interaktives Live-Radar statt schlichter Textkarten

Nutzer-Wunsch 20.08.2026: "diese seite vom streamplan soll viel geiler
und spezieller sein, ueberrasch mich."

Neues Herzstueck: ein 24-Stunden-Ziffernblatt (reines SVG, keine
Bild-Assets), das den festen 20-Uhr-Termin als dauerhaft leuchtenden
Fixpunkt zeigt (goldener Puls) und einen "Jetzt"-Zeiger in Echtzeit mit
der tatsaechlichen Uhrzeit der besuchenden Person mitbewegt (Babyblau,
DogFather-Markenfarbe). Nutzt denselben /live-status-Endpunkt wie die
Startseite:
- Offline: echter Sekunden-Countdown zum naechsten lokalen 20-Uhr-Termin.
- Live: komplettes Radar schaltet auf Rot/Puls um, zeigt den Stream-Titel
  und einen "Jetzt anschauen"-Knopf direkt zu TikTok.
Sanft rotierender Lichtschein fuer Atmosphaere, komplett augenschonend
(gedeckte Farben, respektiert prefers-reduced-motion vollstaendig).

Bugfix unterwegs gefunden (Playwright-Screenshot, dritte Wiederholung
desselben Musters heute): der "Jetzt anschauen"-Knopf blieb trotz
[hidden]-Attribut sichtbar, weil .btn selbst "display" setzt und damit
gleiche Spezifitaet wie die eingebaute [hidden]-Regel hat -- explizite
Regel ergaenzt.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
2026-08-20 22:50:49 +02:00
co-authored by Claude Opus 5
parent b3e191d3ca
commit a5615331aa
38 changed files with 517 additions and 232 deletions
+9 -9
View File
@@ -16,10 +16,10 @@
<meta name="twitter:card" content="summary_large_image" />
<meta name="robots" content="noindex" /> <!-- generische URL, echte Team-Seiten verlinken hierher -->
<link rel="stylesheet" href="assets/css/main.css?v=20260820f" />
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260820f" />
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260820f" />
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260820f" />
<link rel="stylesheet" href="assets/css/main.css?v=20260820g" />
<link rel="stylesheet" href="assets/css/theme-dogfather.css?v=20260820g" />
<link rel="stylesheet" href="assets/css/theme-hasidog.css?v=20260820g" />
<link rel="stylesheet" href="assets/css/theme-spicymedia.css?v=20260820g" />
<style>
.profil-photo { aspect-ratio: 4/5; max-width: 420px; margin: 0 auto; }
.profil-photo img { width: 100%; height: 100%; object-fit: cover; display: block; }
@@ -130,11 +130,11 @@
</main>
<div id="site-footer"></div>
<script src="assets/js/data-modis.js?v=20260820f"></script>
<script src="assets/js/data-scouts.js?v=20260820f"></script>
<script src="assets/js/data-creator.js?v=20260820f"></script>
<script src="assets/js/i18n-profil.js?v=20260820f"></script>
<script src="assets/js/main.js?v=20260820f"></script>
<script src="assets/js/data-modis.js?v=20260820g"></script>
<script src="assets/js/data-scouts.js?v=20260820g"></script>
<script src="assets/js/data-creator.js?v=20260820g"></script>
<script src="assets/js/i18n-profil.js?v=20260820g"></script>
<script src="assets/js/main.js?v=20260820g"></script>
<script>
document.addEventListener("DOMContentLoaded", () => {
const slug = new URLSearchParams(location.search).get("p") || "";