// Minimal-JS für den Projekt-Hub — Progressive Enhancement, keine Abhängigkeiten. // 1) Bestätigungsdialog für Formulare mit data-confirm (z.B. Löschen). document.addEventListener("submit", function (e) { var form = e.target; if (form.dataset && form.dataset.confirm) { if (!window.confirm(form.dataset.confirm)) { e.preventDefault(); } } }); // 2) Klappbare Bereiche: Klick auf .js-collapse blendet das Ziel (data-target) aus. document.addEventListener("click", function (e) { var head = e.target.closest(".js-collapse"); if (!head) return; // Klicks auf interaktive Elemente (z.B. Lösch-Button) nicht als Klapp-Klick werten. if (e.target.closest("button, a, input, form") && !e.target.closest(".collapse-btn")) { return; } var target = document.getElementById(head.dataset.target); if (!target) return; var collapsed = target.classList.toggle("hidden"); var btn = head.querySelector(".collapse-btn"); if (btn) btn.textContent = collapsed ? "▼" : "▲"; });