var objLoginPage = null; $(function(){ var files = [ {type : 'script',url : 'js/src/Services/TokenService.js'}, {type : 'script',url : 'js/src/Services/RouterService.js'}, {type : 'script',url : 'js/src/Utils/FluigUtils.js'}, {type : 'script',url : 'js/src/Services/HttpService.js'}, {type : 'script',url : 'js/src/Services/UserService.js'}, {type : 'script',url : 'js/src/Utils/Validador.js'} ]; new Importador() .import(files) .then(function(){ var tokenService = new TokenService(); tokenService.hasToken() && tokenService.removeToken(); var userService = UserService.createInstance(); var routerService = new RouterService(); objLoginPage = new LoginPage(userService,routerService); $('.forgot-password').on('click',function(){ abreModalEsqueceuSenha(); }) }); }); function LoginPage(userService,routerService){ this.userService = userService; this.routerService = routerService; this.init(); } LoginPage.prototype = { init : function(){ console.log("Passou pelo LoginPage"); var self = this; self.$login = $('#cpf'); self.$pass = $('#senha'); self.$tipoVisualizacao = $('#tipoVisualizacao'); self.$form = $('#form'); self.$form.on('submit',function(event){ event.preventDefault(); console.log('submit event INIT'); var data = self.$form.serializeArray() .reduce(function(obj,field){ console.log('Retirando caracteres especiais do CPF'); var value = field['value']; if (field['name'] == 'cpf') { console.log('cpf',value); value = value.replace(/[^0-9]/g, ''); } obj[field['name']] = value; return obj; },{}); self.userService.login(data); }); } } function openModalCPF(){ getAjaxRequest('page-wrapper/acessoCPF.jsp', function(html){ var myModal = FLUIGC.modal({ title: 'Informe seu CPF, vamos verificar seu cadastro junto ao SEBRAE.', content: html, size: '', id: 'fluig-modal', actions: [ {'label': 'Confirmar','classType': 'btn-primary modalPerfil'}, {'label': 'Fechar','autoClose': true,'classType': 'btn-primary'} ] }, function(err, data) { if(!err) { $('.modal #login').attr('readonly','readonly'); $('.modalPerfil').on('click',function(){ verificaCPF() .then(function(){ myModal.remove(); }) }) } }); }); } function verificaCPF(){ var us = UserService.createInstance(); var cpf = $("#cpf_acesso").val().replace(/[^0-9]/g,''); var data = { cpf : cpf }; return us.verificaCPFSaS(data); } function abreModalEsqueceuSenha(){ var conteudo = $('#modalEsqueceuSenha').html(); var myModal = FLUIGC.modal({ title: 'Recuperar Senha', content: conteudo, id: 'modal-esqueceu-senha', size: 'full', actions: [{ 'label': 'Recuperar', 'classType': 'btn-primary save-card', },{ 'label': 'Cancelar', 'classType': 'btn btn-danger', 'autoClose': true }] }, function(err, data) { if(!err) { $("#modal-esqueceu-senha #cpf_esqueceu_senha").mask('000.000.000-00',{reverse:true}); $(".save-card").on("click", function() { var cpdEsqueceuSenha = $("#modal-esqueceu-senha #cpf_esqueceu_senha").val(); var validador = new Validador(); if ( validador.isCPFValido(cpdEsqueceuSenha) ) { recuperarSenha(cpdEsqueceuSenha.replace(/[^\d]+/g,''), myModal); } else { FLUIGC.toast({ title: 'CPF inválido', message: '
Por favor informe um cpf válido!', type: 'danger', timeout : 2000 }); } }) } }); } function recuperarSenha(cpf, myModal){ var msg = "Foi solicitado a recupera\u00e7\u00e3o de senha para este usu\u00e1rio!"; var loading = FluigUtils.getLoading('Buscando e-mails do CPF...'); $.ajax({ data: {'action' : 'usuarioRecuperarSenha', 'cpf' : cpf} , dataType: '', url: '/ServicosSebrae/PortalController', type: 'GET', success: function(data){ var emails = JSON.parse(data); console.log(emails); loading.hide(); if ( emails.length ) { emails = emails.filter(function(obj,index,array){ return array.indexOf(obj) == index; }) escolherEmail(emails) .then(function(email){ return enviarDadosParaEmail(email); }) .then(function(){ alert("Solicita\u00e7\u00e3o de recupera\u00e7\u00e3o de senha enviada!"); myModal.remove(); }); } else { FLUIGC.toast({ title: '', message: 'CPF não encontrado na nossa base de dados, por favor realize seu cadastro ou entre em contato com Sebrae GO', type: 'danger', timeout : 2000 }); } // if (data != "false") { // enviarDadosParaEmail(cpf); // alert("Solicita\u00e7\u00e3o de recupera\u00e7\u00e3o de senha enviada!"); // myModal.remove(); // }else { // FLUIGC.toast({ // title: 'E-mail não encontrado', // message: '
Por favor clique em Primeiro Acesso e realize seu cadastro!
Caso já tenha se cadastrado, por favor verifique se o e-mail foi o mesmo utilizado no seu cadastro', // type: 'danger', // timeout : 2000 // }); // } }, error: function(data) { loading.hide(); alert("ERRO: Usu\u00e1rio n\u00e3o encontrado!"); } }); } function escolherEmail(emails){ return new Promise(function(resolve,reject){ var conteudo = $('#modalEscolherEmail').html(); var myModal = FLUIGC.modal({ title: 'Escolher e-mail', content: conteudo, id: 'modal-escolher-email', size: 'full', actions: [{ 'label': 'Enviar', 'classType': 'btn-primary escolher-email', },{ 'label': 'Cancelar', 'classType': 'btn btn-danger' }] }, function(err, data) { if(!err) { console.log('listando emails'); var html = emails.map(function(email){ var labelEmail = email; if ( email.substring(0,email.indexOf('@')).length > 3 ) { if ( email.substring(0,email.indexOf('@')).length > 6 ) { labelEmail = email.substr(0,3) + '...' + email.substr(email.indexOf('@')-3,email.length); } else { labelEmail = email.substr(0,3) + '...' + email.substr(email.indexOf('@'),email.length); } } return ''; }).join('') || 'Nenhum e-mail encontrado!'; $('#modal-escolher-email #tbody-emails').html(html); $('.escolher-email').on('click',function(){ var email = $('[name=email]:checked').val(); console.log('email enviado'); if ( email && email.trim() ) { myModal.remove(); resolve(email); } else { FLUIGC.toast({ title: '', message: 'Por favor, escolha um e-mail!', type: 'danger', timeout : 2000 }); } }); $('.btn.btn-danger').on('click',function(){ myModal.remove(); reject(); }); } }); }) } function enviarDadosParaEmail(email){ return new Promise(function(resolve,reject){ var loading = FluigUtils.getLoading('Enviando e-mail'); $.ajax({ data: {'action' : 'enviarEmail', 'email' : email} , url: '/ServicosSebrae/PortalController', type: 'GET', error: function(data) { console.log("ERRO: Usu\u00e1rio n\u00e3o encontrado!") } }) .always(function(){ loading.hide(); resolve(); }) }) }