Spiel-Events, Kalenderdateien, Patches-Seite und neues Design

- Kalender: Termine als Spiel-Event markieren (nur diese zählen in der
  Statistik), optionale Uhrzeiten, Termine bearbeiten
- .ics-Download für einzelne und alle kommenden Termine
- Neue Seite Patches: Upload (PNG, JPEG, WebP, geprüftes SVG),
  Status "Gibt es schon" / "In Planung", Bilder in data/patches/
- Volle Seitenbreite mit Spaltenlayouts, neues Design mit selbst
  gehosteten Schriften, Startseite mit Zoom und drehendem Zahnrad
- Bestehende Daten werden beim Laden ergänzt, keine Migration nötig

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
guyg1474andClaude Opus 5.5 committed 2026-10-12 00:13:52 +02:00
1 parent 43356a120c
commit 486e6f6784
23 files changed
+1757 -387

No files matched your search

+27 -16
View File
@@ -7,9 +7,19 @@
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<main class="narrow">
<main>
<header class="page-head no-print">
<div>
<span class="eyebrow">Fahrgemeinschaften</span>
<h1>Fahrtplaner</h1>
<p>Wer fährt, wer steigt wo zu, wann geht es los.</p>
</div>
</header>
<div id="from-event" class="notice no-print" hidden></div>
<div class="split">
<div class="col">
<div class="card no-print">
<div class="card-head">
<h2>Fahrt</h2>
@@ -36,19 +46,6 @@
</label>
</div>
</div>
<div class="card no-print">
<div class="card-head">
<h2>Wer kommt mit?</h2>
<div class="row">
<button type="button" id="select-all" class="small">Alle</button>
<button type="button" id="select-none" class="small">Keine</button>
</div>
</div>
<p id="trip-members-empty" class="muted" hidden>Lege zuerst Mitglieder unter <a href="/gruppe">Gruppe</a> an.</p>
<ul id="trip-members" class="list"></ul>
</div>
<div class="card no-print">
<h2>Weitere Personen (nur diese Fahrt)</h2>
<form id="guest-form" class="row wrap">
@@ -60,7 +57,6 @@
</form>
<ul id="guests-list" class="list"></ul>
</div>
<div class="card no-print">
<h2>Feste Zuteilung (nur diese Fahrt)</h2>
<p class="muted">Wer hier eingetragen ist, fährt sicher bei diesem Fahrer mit – der Fahrer fährt dann auf jeden Fall.
@@ -73,8 +69,23 @@
</form>
<ul id="fixed-list" class="list"></ul>
</div>
</div>
<div class="col">
<div class="card no-print">
<div class="card-head">
<h2>Wer kommt mit?</h2>
<div class="row">
<button type="button" id="select-all" class="small">Alle</button>
<button type="button" id="select-none" class="small">Keine</button>
</div>
</div>
<p id="trip-members-empty" class="muted" hidden>Lege zuerst Mitglieder unter <a href="/gruppe">Gruppe</a> an.</p>
<ul id="trip-members" class="list"></ul>
</div>
</div>
</div>
<div class="card">
<div class="card" style="margin-top: 20px">
<h2 class="no-print">Einteilung</h2>
<div class="no-print">
<label class="inline">