import { apiPost, authFetchStatus } from '../api.js'; const loadingEl = document.getElementById('page-loading'); const panel = document.getElementById('login-panel'); async function init() { let st; try { st = await authFetchStatus(); } catch { st = { needsBootstrap: false, loggedIn: false }; } if (st.needsBootstrap) { location.href = '/bootstrap.html'; return; } if (st.loggedIn) { location.href = '/start.html'; return; } loadingEl.hidden = true; panel.hidden = false; document.getElementById('form-login').onsubmit = async (e) => { e.preventDefault(); const fd = new FormData(e.target); try { await apiPost('/auth/login', { username: fd.get('username'), password: fd.get('password'), }); location.href = '/start.html'; } catch (err) { document.querySelector('.auth-err')?.remove(); const p = document.createElement('p'); p.className = 'error auth-err'; p.textContent = err.message || 'Anmeldung fehlgeschlagen'; document.getElementById('form-login').prepend(p); } }; } init();