import BuscaApi from '../lib/BuscaApiG.js'; export default class LoginScreen { constructor(navigateCallback) { this.navigate = navigateCallback; this.buscaApi = new BuscaApi(); } async login(email, password, lembrar) { try { const data = await this.buscaApi.fetchApi('Usuarios/login', 'POST', { email, senha: password, lembrar }); if (data.status) { console.log(data) sessionStorage.setItem('token', data.token); sessionStorage.setItem('user', data.user); this.navigate('admin'); location.reload(); } else { this.displayMessage("Login falhou:\n " + data.message); } } catch (error) { console.error('Erro durante o login:', error); this.displayMessage("Erro durante o login: " + error.message); } } displayMessage(message) { const messageElement = document.getElementById('mensagem'); if (messageElement) { messageElement.innerText = message; document.getElementById('id02').style.display = 'block'; } else { Swal.fire("Sucesso!", message, "sucess"); } } render() { const loginContainer = document.createElement('div'); loginContainer.className = 'login-container'; loginContainer.innerHTML = `
×

System X

`; loginContainer.querySelector('#loginForm').addEventListener('submit', async (e) => { e.preventDefault(); const email = loginContainer.querySelector('#email').value; const password = loginContainer.querySelector('#senha').value; const lembrar = loginContainer.querySelector('#lembrar').checked; await this.login(email, password, lembrar); }); loginContainer.querySelector('#cadastrar').addEventListener('click', () => { this.navigate('cadastro'); }); loginContainer.querySelector('#esqueciSenha').addEventListener('click', () => { this.navigate('recuperarSenha'); }); return { element: loginContainer, init: () => {} }; } }