(() => { const modal = document.querySelector('[data-instance-modal]'); const form = document.querySelector('[data-instance-form]'); if (!modal || !form) return; const title = document.querySelector('[data-instance-modal-title]'); const closeBtn = document.querySelector('[data-instance-close]'); const newBtn = document.querySelector('[data-instance-new]'); const cancelBtn = document.querySelector('[data-instance-cancel]'); const currentIdInput = form.querySelector('input[name="current_id"]'); const idInput = form.querySelector('input[name="instance_id"]'); const nameInput = form.querySelector('input[name="name"]'); const urlInput = form.querySelector('input[name="url"]'); const tokenInput = form.querySelector('input[name="token"]'); const primaryInput = form.querySelector('input[name="is_primary"]'); const resetForm = () => { if (currentIdInput) currentIdInput.value = ''; if (idInput) idInput.value = ''; if (nameInput) nameInput.value = ''; if (urlInput) urlInput.value = ''; if (tokenInput) tokenInput.value = ''; if (primaryInput) primaryInput.checked = false; }; const openModal = () => { modal.classList.add('is-open'); modal.setAttribute('aria-hidden', 'false'); }; const closeModal = () => { modal.classList.remove('is-open'); modal.setAttribute('aria-hidden', 'true'); }; document.querySelectorAll('[data-instance-edit]').forEach((btn) => { btn.addEventListener('click', () => { const card = btn.closest('[data-instance-id]'); if (!card) return; if (currentIdInput) currentIdInput.value = card.dataset.instanceId || ''; if (idInput) idInput.value = card.dataset.instanceId || ''; if (nameInput) nameInput.value = card.dataset.name || ''; if (urlInput) urlInput.value = card.dataset.url || ''; if (tokenInput) tokenInput.value = ''; if (primaryInput) primaryInput.checked = card.dataset.primary === '1'; if (title) title.textContent = 'Instanz bearbeiten'; openModal(); }); }); if (newBtn) { newBtn.addEventListener('click', () => { resetForm(); if (title) title.textContent = 'Neue Instanz'; openModal(); }); } if (closeBtn) { closeBtn.addEventListener('click', () => closeModal()); } if (cancelBtn) { cancelBtn.addEventListener('click', () => resetForm()); } })();