adventskalender/shared/js/door-open.js aktualisiert
This commit is contained in:
@@ -1,17 +1,14 @@
|
||||
// Öffnungslogik für Einzeltüren
|
||||
document.querySelectorAll(".door").forEach(door => {
|
||||
door.addEventListener("click", () => {
|
||||
const day = door.dataset.day;
|
||||
|
||||
// openfield immer unabhängig vom Türtyp selektieren (für Eintrag oder Doppeltür)
|
||||
const openfield = document.querySelector(`.openfield[data-day="${day}"]`);
|
||||
|
||||
// === Doppeltür-Logik ===
|
||||
if (door.classList.contains("double")) {
|
||||
if (door.classList.contains("open")) {
|
||||
console.log(`Doppeltür ${day} erneut geöffnet`);
|
||||
return;
|
||||
}
|
||||
|
||||
door.classList.add("open");
|
||||
|
||||
const leftFluegel = door.querySelector(".fluegel.left");
|
||||
@@ -24,7 +21,6 @@ document.querySelectorAll(".door").forEach(door => {
|
||||
return;
|
||||
}
|
||||
|
||||
// === Einzeltür-Logik ===
|
||||
if (door.classList.contains("open")) {
|
||||
console.log(`Tür ${day} erneut geöffnet`);
|
||||
return;
|
||||
@@ -34,3 +30,27 @@ document.querySelectorAll(".door").forEach(door => {
|
||||
if (openfield) openfield.classList.add("open");
|
||||
});
|
||||
});
|
||||
|
||||
|
||||
// Öffnungslogik für Flügeltüren (Doppeltür-Variante ohne Container-Wrapper)
|
||||
const fluegelPaare = new Set();
|
||||
document.querySelectorAll(".fluegel").forEach(fluegel => {
|
||||
fluegel.addEventListener("click", () => {
|
||||
const day = fluegel.dataset.day;
|
||||
const pairId = `day-${day}`;
|
||||
if (fluegelPaare.has(pairId)) {
|
||||
console.log(`Flügelpaar ${day} erneut geöffnet`);
|
||||
return;
|
||||
}
|
||||
|
||||
const left = document.querySelector(`.fluegel.left[data-day="${day}"]`);
|
||||
const right = document.querySelector(`.fluegel.right[data-day="${day}"]`);
|
||||
const openfield = document.querySelector(`.openfield[data-day="${day}"]`);
|
||||
|
||||
if (left) left.classList.add("open");
|
||||
if (right) right.classList.add("open");
|
||||
if (openfield) openfield.classList.add("open");
|
||||
|
||||
fluegelPaare.add(pairId);
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user