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 '