document.getElementById('setupForm').addEventListener('submit', async (e) => { e.preventDefault(); const errorElement = document.getElementById('setupError'); errorElement.style.display = 'none'; const formData = { username: document.getElementById('username').value, password: document.getElementById('password').value, email: document.getElementById('email').value || null, display_name: document.getElementById('displayName').value || null }; try { const response = await fetch('/setup', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify(formData) }); if (response.ok) { window.location.href = '/login'; } else { const data = await response.json().catch(() => null); errorElement.textContent = data?.error || 'Failed to create admin account'; errorElement.style.display = 'block'; } } catch (error) { errorElement.textContent = 'An error occurred. Please try again.'; errorElement.style.display = 'block'; } });