document.addEventListener('DOMContentLoaded', function() { // ---------- REQUEST RESET ---------- let forgotBtn = document.getElementById('button_forgot-password'); if ( forgotBtn ){ forgotBtn.addEventListener('click', function(e){ e.preventDefault(); let emailEl = document.getElementById('input_forgot-email'); let email = ( emailEl.value || '' ).trim(); if (!email) { showMessage("Skriv inn e-post.", "warning"); return; } ajaxCall(root_url + '/api/v1/auth/forgot-password', 'POST', JSON.stringify({email:email}), function(data){ // Server returns identical 200 whether user exists or not (privacy) showMessage((data.data && data.data.message) || "Sjekk e-posten din.", "info"); emailEl.value = ''; }); }); } let forgotForm = document.getElementById('form_forgot-password'); if ( forgotForm ){ forgotForm.addEventListener('keypress', function(e){ if ( e.which === 13 || e.key === 'Enter' ){ if ( forgotBtn ) forgotBtn.click(); } }); } // ---------- SET NEW PASSWORD ---------- let resetBtn = document.getElementById('button_reset-password'); if ( resetBtn ){ resetBtn.addEventListener('click', function(e){ e.preventDefault(); let token = document.getElementById('input_reset-token').value || ''; let password = document.getElementById('input_reset-password').value || ''; let confirm = document.getElementById('input_reset-password-confirm').value || ''; if (password.length < 8) { showMessage("Passord må være minst 8 tegn.", "warning"); return; } if (password !== confirm) { showMessage("Passordene er ikke like.", "warning"); return; } ajaxCall(root_url + '/api/v1/auth/reset-password', 'POST', JSON.stringify({token:token, password:password}), function(data){ if (data.status && data.status.code === 200) { showMessage((data.data && data.data.message) || "Passord oppdatert.", "info"); setTimeout(function(){ window.location.href = '/login'; }, 1500); } else { showMessage((data.status && data.status.message) || "Kunne ikke oppdatere passord.", "alert"); } }); }); } let resetForm = document.getElementById('form_reset-password'); if ( resetForm ){ resetForm.addEventListener('keypress', function(e){ if ( e.which === 13 || e.key === 'Enter' ){ if ( resetBtn ) resetBtn.click(); } }); } });