Termine & Downloads
Datengetriebene Widgets (JSON oder .ics) als native HTML-Alternative zur iframe-Einbettung - durchsuchbar, per CSS themebar, kein Cross-Origin-/Höhenproblem. Alles opt-in: js/ics.js, js/events.js, js/downloads.js, jeweils nur auf Seiten einbinden, die sie wirklich nutzen.
Kalender (Monatsraster)
data-view="month" - Termine als Punkte im Tag, Klick öffnet den Tag als .ncss-modal. Quelle hier: data/events.json.
Kalender-Liste (Agenda)
data-view="agenda" - anstehende Termine, nach Monat gruppiert. Quelle hier: eine .ics-Datei (data/sample.ics), inkl. wiederkehrender Termine über RRULE.
Termin-Liste
data-view="list" - Termine als Karten-Raster, nutzt .ncss-card statt eigener Optik.
Einzeltermin
data-view="single" - ein hervorgehobener Termin, per data-event-id gewählt (hier: "conf") oder ohne diese Angabe der nächste anstehende.
Downloads
js/downloads.js - Datei-Liste aus data/downloads.json, Icon/Größe automatisch aus type/size bzw. der Datei-Endung.
Datenformat
JSON-Termine (jedes Feld außer title/start optional):
[
{ "title": "Kickoff", "start": "2026-08-26T09:00", "end": "2026-08-26T10:30",
"location": "Raum A", "description": "...", "url": "https://..." },
{ "title": "Feiertag", "start": "2026-10-03", "allDay": true }
]
.ics-Dateien (Google-/Outlook-/Apple-Export) werden ebenfalls unterstützt (data-ics statt data-src) - siehe js/ics.js für den abgedeckten RRULE-Umfang.