From b2f632c07f3ba26088ad101edd03572992394517 Mon Sep 17 00:00:00 2001 From: Vibe Nuage Agent Date: Sat, 6 Jun 2026 11:31:30 +0000 Subject: [PATCH] =?UTF-8?q?Fix:=20Alle=20inline=20onclick-Handler=20durch?= =?UTF-8?q?=20programmatische=20Event-Listener=20ersetzt=20-=20Bearbeiten-?= =?UTF-8?q?=20und=20L=C3=B6schen-Buttons=20in=20Tee-Karten=20verwenden=20j?= =?UTF-8?q?etzt=20data-Attributes=20und=20Event-Listener=20-=20'Erste=20Te?= =?UTF-8?q?e=20hinzuf=C3=BCgen'-Button=20verwendet=20jetzt=20Event-Listene?= =?UTF-8?q?r=20-=20setupTeaCardEventListeners()=20Methode=20hinzugef=C3=BC?= =?UTF-8?q?gt=20-=20Keine=20Abh=C3=A4ngigkeit=20mehr=20von=20globalem=20ap?= =?UTF-8?q?p-Scope=20in=20HTML?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: trevor1969 --- app.js | 34 ++++++++++++++++++++++++++++++---- 1 file changed, 30 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index 4943f11..727c2a5 100644 --- a/app.js +++ b/app.js @@ -1321,9 +1321,14 @@ class TeeTracker {
🍃
Keine Tee-Sorten vorhanden
Füge deine erste Tee-Sorte hinzu!
- + `; + // Add event listener for the add button + const addBtn = container.querySelector('.add-first-tea-btn'); + if (addBtn) { + addBtn.addEventListener('click', () => this.openTeaModal()); + } return; } @@ -1369,7 +1374,7 @@ class TeeTracker { } container.innerHTML = teas.map(tea => ` -
+
${tea.name} ${tea.organic ? '🌱' : ''}
${tea.type}
@@ -1380,15 +1385,36 @@ class TeeTracker { ${tea.rating ? this.renderStarRatingStatic(tea.rating) : ''}
`).join(''); + + // Add event listeners to all edit and delete buttons + this.setupTeaCardEventListeners(); + } + + setupTeaCardEventListeners() { + // Edit buttons + document.querySelectorAll('.tea-edit-btn').forEach(btn => { + btn.addEventListener('click', (e) => { + const teaId = e.target.closest('.tea-edit-btn').dataset.teaId; + if (teaId) this.editTea(teaId); + }); + }); + + // Delete buttons + document.querySelectorAll('.tea-delete-btn').forEach(btn => { + btn.addEventListener('click', (e) => { + const teaId = e.target.closest('.tea-delete-btn').dataset.teaId; + if (teaId) this.showDeleteTeaConfirm(teaId); + }); + }); } // ============================================