mirror of
https://github.com/guyg1474/hcrb.git
synced 2026-10-16 07:13:28 +02:00
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:
1 parent
43356a120c
commit
486e6f6784
23 files changed
+1757
-387
No files matched your search
@@ -0,0 +1,81 @@
|
||||
<!doctype html>
|
||||
<html lang="de">
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||
<title>Patches – HCRB</title>
|
||||
<link rel="stylesheet" href="/css/style.css">
|
||||
</head>
|
||||
<body>
|
||||
<main>
|
||||
<header class="page-head">
|
||||
<div>
|
||||
<span class="eyebrow">Klett & Stoff</span>
|
||||
<h1>Patches</h1>
|
||||
<p>Gruppen-Patches, Event-Patches und alles, was bei der HCRB auf die Weste kommt.</p>
|
||||
</div>
|
||||
<div class="actions">
|
||||
<button type="button" id="add-btn" class="primary" hidden>Patch hochladen</button>
|
||||
</div>
|
||||
</header>
|
||||
|
||||
<div class="card" id="patch-form-card" hidden>
|
||||
<h2 id="patch-form-title">Patch hochladen</h2>
|
||||
<form id="patch-form" class="split">
|
||||
<label class="dropzone" id="dropzone" for="patch-file">
|
||||
<img id="patch-preview" alt="Vorschau" hidden>
|
||||
<span id="drop-text">
|
||||
<strong>Bild auswählen</strong><br>
|
||||
oder hierher ziehen · PNG, JPEG, WebP oder SVG
|
||||
</span>
|
||||
<input type="file" id="patch-file" accept="image/png,image/jpeg,image/webp,image/svg+xml,.svg" hidden>
|
||||
</label>
|
||||
<div>
|
||||
<label>Name
|
||||
<input type="text" id="patch-name" required maxlength="80" placeholder="z. B. HCRB Gruppenpatch 2026">
|
||||
</label>
|
||||
<fieldset class="segmented">
|
||||
<legend>Status</legend>
|
||||
<label><input type="radio" name="patch-status" id="patch-status-vorhanden" value="vorhanden" checked> Gibt es schon</label>
|
||||
<label><input type="radio" name="patch-status" id="patch-status-geplant" value="geplant"> In Planung</label>
|
||||
</fieldset>
|
||||
<label>Beschreibung (optional)
|
||||
<textarea id="patch-description" maxlength="500" placeholder="Wofür, seit wann, wer hat ihn entworfen …"></textarea>
|
||||
</label>
|
||||
<p class="muted">Tipp: Ein freigestelltes PNG oder eine SVG ohne Hintergrund sieht in der Galerie am besten aus.
|
||||
Große Bilder werden vor dem Hochladen automatisch verkleinert.</p>
|
||||
<p id="patch-error" class="warn" hidden></p>
|
||||
<div class="row wrap">
|
||||
<button type="submit" class="primary" id="patch-submit">Hochladen</button>
|
||||
<button type="button" id="patch-cancel">Abbrechen</button>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</div>
|
||||
|
||||
<section class="patch-group" id="group-vorhanden" hidden>
|
||||
<div class="section-title"><h2>Gibt es schon</h2><span class="muted" id="count-vorhanden"></span></div>
|
||||
<div class="patch-grid" id="grid-vorhanden"></div>
|
||||
</section>
|
||||
<section class="patch-group" id="group-geplant" hidden>
|
||||
<div class="section-title"><h2>In Planung</h2><span class="muted" id="count-geplant"></span></div>
|
||||
<div class="patch-grid" id="grid-geplant"></div>
|
||||
</section>
|
||||
<div id="patch-empty" class="empty-state" hidden>
|
||||
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.4" aria-hidden="true"><path d="M12 2.5l8 3.5v6c0 5-3.5 8.2-8 9.5-4.5-1.3-8-4.5-8-9.5V6z"/></svg>
|
||||
<strong>Noch keine Patches</strong>
|
||||
<span id="patch-empty-hint">Sobald jemand aus der Gruppe einen Patch hochlädt, erscheint er hier.</span>
|
||||
</div>
|
||||
|
||||
<dialog class="lightbox" id="lightbox">
|
||||
<form method="dialog"><button class="close small" aria-label="Schließen">✕</button></form>
|
||||
<figure>
|
||||
<img id="lightbox-img" alt="">
|
||||
<figcaption><strong id="lightbox-name"></strong><span id="lightbox-text" class="muted"></span></figcaption>
|
||||
</figure>
|
||||
</dialog>
|
||||
</main>
|
||||
|
||||
<script type="module" src="/js/patches.js"></script>
|
||||
</body>
|
||||
</html>
|
||||
Reference in new issue
Block a user