import * as Login from 'account/login.js'; const $form = $('.form'); const urlParams = Login.getURLParams(window.location.href); window.history.replaceState(null, null, window.location.pathname); $('.logo').on('click', (e) => window.top.location.href = 'http://emoby.cloud'); $('.provider').on('click', (e) => window.top.location.href = 'http://logica-consulting.com'); $form.find('input').on('keypress', (e) => (e.keyCode || e.which) == 13 ? login() : true); $form.find('.btn-login').on('click', (e) => login()); $form.find('.btn-recovery').on('click', (e) => resetPassword()); $form.find('.btn-register').on('click', (e) => window.top.location.replace('register.php')); $form.find('.btn-app a').on('click', (e) => window.top.location.replace(e.currentTarget.href)); //---------------------------------------------------------------------------- // LOGIN //---------------------------------------------------------------------------- const login = async () => { const username = $form.find('[name="username"]').val() || ''; const password_personale = $form.find('[name="password"]').val() || ''; const password_generica = $form.find('[name="password_generica"]').val() || ''; swal2({ title: `Logging in...`, showConfirmButton: false, allowOutsideClick: false, }); swal2.showLoading(); const { error } = await Login.auth({ credentials: { username, password_personale, password_generica, }, extra: urlParams.r || '', }); if (error == 'Maintenance') { swal2({ type: "info", title: "Sistema in manutenzione", html: "È in corso un'attività di manutenzione straordinaria (non preventivata) del sistema

L'accesso sarà ripristinato non appena possibile" }); } else if (error == 'Access denied') { swal2({ type: "error", title: "Credenziali errate" }); } else if (error == 'Network error') { swal2({ type: "error", title: "Errore di rete" }); } else if (error == 'Expired password') { await swal2({ type: 'error', timer: 6000, title: `Nuova password richiesta`, text: `La password non è più valida, verrà inviata un'email all'utente "${username}" con un link per reimpostarla`, }); resetPassword({ requestConfirmation: false }); } if (!error) { const success = Login.access(); if (!success) swal2({ type: "error", title: "Errore in fase di login" }); } }; //---------------------------------------------------------------------------- // RESET PASSWORD //---------------------------------------------------------------------------- const resetPassword = async ({ requestConfirmation = true } = {}) => { const username = $form.find('[name="username"]').val() || ''; const password_generica = $form.find('[name="password_generica"]').val() || ''; if (!username) { return swal2({ type: 'warning', title: `Inserisci il tuo Username per proseguire` }); } if (!password_generica) { return swal2({ type: 'warning', title: `Inserisci il tuo Codice Azienda per proseguire` }); } if (requestConfirmation) { const { value } = await swal2({ title: `Reimposta password`, text: `Verrà inviata un'email all'utente "${username}" con un link per reimpostare la password`, cancelButtonText: 'Annulla', showCancelButton: true, confirmButtonText: `Invia email`, }); if (!value) return; } swal2({ title: `Invio email in corso, attendere...`, showConfirmButton: false, allowOutsideClick: false, }); swal2.showLoading(); const { success, error } = await Login.resetPassword({ username, envPassword: password_generica, }); if (success) { swal2({ type: 'success', title: `Email inviata`, //text: `Se l'username "${username}" corrispondesse ad un utente esistente, riceverà un'email con un link per resettare la password`, text: `Per reimpostare la password, segui le istruzioni riportate nell'email`, }); } else if (error == 'Email not sent' || !error) { swal2({ type: 'error', title: `Email non inviata`, text: `Si è verificato un errore durante la procedura di invio email, ti invitiamo a ripetere l'operazione`, }); } else if (error == 'Missing email') { swal2({ type: 'error', title: `Email non configurata`, text: `L'utente inserito non ha alcun indirizzo email configurato, ti invitiamo a contattare il tuo responsabile`, }); } else if (error == 'Invalid password') { swal2({ type: 'error', title: `Codice azienda non valido`, text: `Il codice azienda inserito non è valido, ti invitiamo a contattare il tuo responsabile`, }); } else if (error == 'Network error') { swal2({ type: 'error', title: `Errore di rete` }); } };