/* ======== Estilos e funções de droplist: ======== */ function mostrarConteudo(level) { const iconSeta = document.getElementById(level); const div = document.getElementById(`itens_to_display${level}`); const classes = div.classList; const result = classes.toggle('mostrar'); if (result) { div.setAttribute('class', 'mostrar'); iconSeta.setAttribute('class', 'iconeCima material-icons'); } else { div.setAttribute('class', 'padrao'); iconSeta.setAttribute('class', 'iconeBaixo material-icons'); }; }; document.querySelectorAll('.icones').forEach(element => { element.addEventListener('click', function (e) { mostrarConteudo(e.target.id); }); }); // ======== Modal ISA: ======== const modalIsa = document.getElementById('modalISA'); document.getElementById('btnISA').addEventListener('click', () => { if (modalIsa.style.display === 'none' || modalIsa.style.display === '') { modalIsa.style.display = 'block'; } else { modalIsa.style.display = 'none'; } }); document.getElementById('fecharModalISA').addEventListener('click', () => { modalIsa.style.display = 'none'; }); /* ======== Funções do forms em geral ======== */ const modal = document.getElementById('form-inscricao'); const section = document.getElementById('sectionForm'); const formDados = document.forms['dados']; let loading = document.querySelector('.spinner-wrapper'); //Função para abrir e fechar o modal function toggleModal() { modal.classList.toggle('show'); section.classList.toggle('modal-aberto'); loading.setAttribute('class', 'abreModal'); formDados.style.display = 'block'; limparCampos(); }; //Função para limpar os campos function limparCampos() { formDados.elements.Nome_completo.value = ''; formDados.elements.Email.value = ''; formDados.elements.Telefone.value = ''; formDados.elements.Estado.value = ''; formDados.elements.Cidade.value = ''; formDados.elements.Idade.value = ''; formDados.elements.Pagamento.value = ''; formDados.elements.Como_conheceu.value = ''; formDados.elements.Cupom.value = ''; formDados.elements.NomeIndicacaoCupom.value = ''; } //Função que valida os campos para que possa cadastrar o user function validacao() { var alerta = ""; var inputs = document.querySelectorAll('.obrigatorios'); for (var input of inputs.values()) { if (input.value == "") { alerta = alerta + input.name + ";\n"; }; }; if (alerta !== "") { var alertPagina = "Preencha os campos a seguir antes de cadastrar: \n"; alertPagina = alertPagina + alerta; return alertPagina } var termos = document.getElementById('termos'); if (termos.checked == false) { alert('Aceite os termos para continuar.') } else { return alerta; } } // Não deixa o usuário inserir letras no campo de telefone const telefone = document.getElementById('telefone'); // Máscara const mask = { telefone(value) { return value .replace(/\D/g, '') .replace(/(\d{2})(\d)/, '($1) $2') .replace(/(\d{4})(\d)/, '$1-$2') .replace(/(\d{4})-(\d)(\d{4})/, '$1$2-$3') .replace(/(-\d{4})\d+?$/, '$1') } }; document.querySelectorAll('#telefone').forEach(($input) => { const field = $input.dataset.js; $input.addEventListener('input', (e) => { e.target.value = mask[field](e.target.value); }, false); }); telefone.addEventListener('input', function (e) { if (isNaN(parseInt(e.data))) { let valorTelefone = e.target.value; let numero = valorTelefone.substr(0, valorTelefone.length - 1); e.target.value = numero; } }) //Fecha modal document.getElementById('btnCancelar').addEventListener('click', toggleModal); //API inscrição document.getElementById('btnSalvar').addEventListener('click', salvarDados) function salvarDados() { let data = new Date(); let dataAtual = String(data.getDate()).padStart(2, '0') + '/' + String(data.getMonth() + 1).padStart(2, '0') + '/' + data.getFullYear(); var objectValues = { Nome: formDados.elements.Nome_completo.value, Email: formDados.elements.Email.value, Phone: formDados.elements.Telefone.value, Estado: formDados.elements.Estado.value, Cidade: formDados.elements.Cidade.value, IdadeMaior: formDados.elements.Idade.value, Pagamento: formDados.elements.Pagamento.value, // Turma: document.querySelector("#turma").value, ComoConheceu: formDados.elements.Como_conheceu.value, Cupom: formDados.elements.Cupom.value, NomeIndicacaocupom: formDados.elements.NomeIndicacaoCupom.value, Evento: "LISTADEESPERABP2022", DataInscricao: dataAtual }; var Token = ""; var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); var raw = JSON.stringify({ "username": "contato@faculdadeiv2.com.br", "password": "@Totvs@iv2" }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://events-dot-faculdadeiv2.rj.r.appspot.com/v1/account/login", requestOptions) .then(response => response.text()) .then((result) => { Token = JSON.parse(result).token; GravarInscrito(Token, objectValues); }) .catch(error => console.log('error', error)); } function GravarInscrito(Token, objectValues) { let mensagem = validacao(); if (mensagem !== "") { if (mensagem == undefined) { return false; } alert(mensagem); mensagem = ""; return false; } formDados.style.display = 'none'; modal.setAttribute('id', 'ocultar'); loading.setAttribute('class', 'salvando'); var myHeaders = new Headers(); myHeaders.append("Authorization", "Bearer " + Token); myHeaders.append("Content-Type", "application/json"); var requestOptions = { method: 'POST', headers: myHeaders, body: JSON.stringify(objectValues), redirect: 'follow' }; fetch("https://events-dot-faculdadeiv2.rj.r.appspot.com/api/inscricao/InscricaoBP", requestOptions) .then(response => response.text()) .then(async result => { EnviarEmail(Token, objectValues.Nome, objectValues); }) .catch(error => console.log('error', error)); } function EnviarEmail(Token, nameUser, objectValues) { var templateEmail = Geratemplate(nameUser); var myHeaders = new Headers(); myHeaders.append("Content-Type", "application/json"); var raw = JSON.stringify({ "assunto": "Lista de Espera - Beginners PRO", "corpo": "true", "corpoHtml": templateEmail, "destinatarios": objectValues.Email }); var requestOptions = { method: 'POST', headers: myHeaders, body: raw, redirect: 'follow' }; fetch("https://us-central1-faculdadeiv2.cloudfunctions.net/enviarEmail", requestOptions) .then(response => response.text()) .then(result => { loading.setAttribute('class', 'abreModal'); alert('Parabéns, inscrição realizada com sucesso!'); toggleModal(); modal.setAttribute('id', 'form-inscricao'); limparCampos(); }).catch(error => console.log('error', error)); } function Geratemplate(nameUser) { return ` Lista de Espera - Beginners PRO

 

Parabéns! Você está na lista de espera do Beginners PRO.🥳🥳

 

Oi, ${nameUser}

Sua inscrição na lista de espera do Beginners PRO foi feita com sucesso.
Nós vamos te avisar com exclusividade quando abrir novas vagas do curso.

Já aproveita e não esquece de nos seguir também nas redes sociais, toda semana temos conteúdo novo para você 😀
 
YouTube
LinkedIn
Facebook
Instagram
Website

 

Caso esteja com dificuldades, fique tranquilo! Você pode enviar um E-mail ou um WhatsApp para o nosso suporte:
E-mail: contato@faculdadeiv2.com.br
WhatsApp: (11) 99192-8367

Um abraço.
Equipe Facul iv2
 
☏ Fale conosco!
YouTube
LinkedIn
Facebook
Instagram
Website
Nosso email é:
contato@faculdadeiv2.com.br

WE ❤️ TECHNOLOGY
Faculdade iv2

Quer mudar a maneira de como receber estes emails?
Para se desinscrever de nossos emails.  

Acesse a plataforma do class > Clique em editar perfil > desabilitar campo de Receber emails.
` }