let adminToken = null; async function doLogin() { const adminUsrInput = document.getElementById("input_admin_usr"); const adminPassInput = document.getElementById("input_admin_pass"); const errDiv = document.getElementById("loginErr"); if (adminUsrInput && adminPassInput) { adminToken = await getAdminToken(adminUsrInput.value, adminPassInput.value); if (adminToken) { // render admin interface } else { if (errDiv) { errDiv.innerHTML = "Incorrect credentials"; } } } } async function getAdminToken(user, pass) { const headers = new Headers(); headers.set('Authorization', 'Basic ' + btoa(user + ":" + pass)); try { const res = await fetch('/admin/api/auth/', { method: 'POST', headers: headers }); if (res.ok) { return await res.json(); } return null; } catch (err) { return null; } }