Bem-Vindo!
Esqueceu a senha?
Entrar
Já é membro? Ative sua conta aqui
(?)
Ative sua conta caso já seja membro!
A maioria dos membros já está no sistema, só precisa ativar a conta. Se você frequenta a igreja e ainda não tem acesso, clique aqui para ativar seu cadastro.
ou
Continuar com Google
Sou novo aqui! Cadastre-se
// Inicializa o Firebase firebase.initializeApp(firebaseConfig); const auth = firebase.auth(); // Elementos do DOM const sendCodeBtn = document.getElementById('send-code-btn'); const phoneNumberInput = document.getElementById('phone-number'); const codeContainer = document.getElementById('code-verification-container'); const verifyCodeBtn = document.getElementById('verify-code-btn'); const verificationCodeInput = document.getElementById('verification-code'); const errorP = document.getElementById('firebase-error-message'); // Configura o reCAPTCHA invisível window.recaptchaVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container', { 'size': 'invisible', 'callback': (response) => { // reCAPTCHA resolvido, pode prosseguir com o envio do SMS } }); // --- LÓGICA PARA ENVIAR O CÓDIGO --- sendCodeBtn.addEventListener('click', () => { const phoneNumber = "+55" + phoneNumberInput.value.replace(/\D/g, ''); // Limpa e adiciona código do Brasil const appVerifier = window.recaptchaVerifier; sendCodeBtn.disabled = true; sendCodeBtn.textContent = 'Enviando...'; auth.signInWithPhoneNumber(phoneNumber, appVerifier) .then((confirmationResult) => { window.confirmationResult = confirmationResult; codeContainer.style.display = 'block'; errorP.style.display = 'none'; sendCodeBtn.textContent = 'Código Enviado!'; }).catch((error) => { console.error("Erro ao enviar SMS:", error); errorP.textContent = "Falha ao enviar o código. Verifique o número e tente novamente."; errorP.style.display = 'block'; sendCodeBtn.disabled = false; sendCodeBtn.textContent = 'Enviar Código'; // Reseta o reCAPTCHA em caso de erro recaptchaVerifier.render().then(widgetId => recaptchaVerifier.reset(widgetId)); }); }); // --- LÓGICA PARA VERIFICAR O CÓDIGO E FAZER LOGIN --- verifyCodeBtn.addEventListener('click', () => { const code = verificationCodeInput.value; if (!window.confirmationResult) { errorP.textContent = "Primeiro, solicite o envio de um código."; errorP.style.display = 'block'; return; } verifyCodeBtn.disabled = true; verifyCodeBtn.textContent = 'Verificando...'; window.confirmationResult.confirm(code).then((result) => { // Usuário autenticado com sucesso no Firebase! const user = result.user; // Obtém o token de ID para enviar ao backend PHP return user.getIdToken(); }) .then((idToken) => { // Envia o token para o backend para criar a sessão PHP return fetch('php/verificar-firebase-auth.php', { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ token: idToken }) }); }) .then(res => res.json()) .then data => { if (data.success) { // Backend criou a sessão, redirecionar! window.location.href = data.redirectUrl; } else { throw new Error(data.error || 'Erro desconhecido no servidor.'); } }) .catch((error) => { console.error("Erro de verificação:", error); errorP.textContent = "Código inválido ou erro no servidor. Tente novamente."; errorP.style.display = 'block'; verifyCodeBtn.disabled = false; verifyCodeBtn.textContent = 'Verificar e Entrar'; }); });