$(function(){
var $window = $(window);
// --- mascara
var SPMaskBehavior = function(val){
return val.replace(/\D/g,'').length === 11 ? '(00) 00000-0000' : '(00) 0000-00009';
},
spOptions = {
onKeyPress : function(val,e,field,options){
field.mask(SPMaskBehavior.apply({},arguments),options);
}
};
$('input.telefone').mask(SPMaskBehavior,spOptions);
var SPMaskBehaviorDDI = function(val){
return val.replace(/\D/g,'').length === 13 ? '+00 (00) 00000-0000' : '+00 (00) 0000-00009';
},
spOptionsDDI = {
onKeyPress : function(val,e,field,options){
field.mask(SPMaskBehaviorDDI.apply({},arguments),options);
}
};
$('input.telefone-ddi').mask(SPMaskBehaviorDDI,spOptionsDDI);
$('input.cep').mask('99999-999');
$('input.data').mask('99/99/9999');
$('input.cpf').mask('999.999.999-99');
$('input.cnpj').mask('99.999.999/9999-99');
var options = {
onKeyPress : function(cpf,ev,el,op){
var masks = ['000.000.000-000','00.000.000/0000-00'];
$('.cpf-cnpj').mask((cpf.length > 14) ? masks[1] : masks[0],op);
}
}
$('.cpf-cnpj').length > 11 ? $('.cpf-cnpj').mask('00.000.000/0000-00',options) : $('.cpf-cnpj').mask('000.000.000-00#',options);
// --- //
// --- busca
$('#form-busca-geral').on('submit',function(evt){
evt.preventDefault();
var $termo = $('#busca-geral').val();
window.location.href = 'https://www.igna.com.br/br/busca/?termo='+ $termo;
});
// --- busca informativos
if(page == 'informativos'){
$('#form-busca-informativos').on('submit',function(evt){
evt.preventDefault();
var termo = $('#busca-informativos');
if(termo.val() == ''){
termo.addClass('erro').focus();
return false;
} else {
window.location.href = 'https://www.igna.com.br/br/informativos/?termo='+ termo.val();
}
});
}
// --- entre em contato
$('#formulario-contato').submit(function(evt){
evt.preventDefault();
var $this = $(this),
empresa = $('#empresa'),
nome = $('#nome'),
telefone = $('#telefone'),
email = $('#email'),
idassunto = $('#idassunto'),
mensagem = $('#mensagem'),
retorno = $this.find('.retorno').removeClass('sucesso').addClass('erro');
if(!$this.hasClass('loading')){
if(empresa.val() == ''){
retorno.html('Preencha a empresa!');
empresa.addClass('erro').focus();
return false;
} else {
empresa.removeClass('erro');
}
if(nome.val() == ''){
retorno.html('Por favor informe seu nome!');
nome.addClass('erro').focus();
return false;
} else {
nome.removeClass('erro');
}
if(telefone.val() == ''){
retorno.html('Por favor informe seu telefone!');
telefone.addClass('erro').focus();
return false;
} else {
telefone.removeClass('erro');
}
if(email.val() == ''){
retorno.html('Por favor informe seu e-mail!');
email.addClass('erro').focus();
return false;
}
else if(verificaEmail(email.val())){
retorno.html('Por favor forneça um e-mail válido!');
email.addClass('erro').focus();
return false;
} else {
email.removeClass('erro');
}
if(idassunto.val() == 0){
retorno.html('Por favor selecione o assunto!');
idassunto.addClass('erro').focus();
return false;
} else {
idassunto.removeClass('erro');
}
if(mensagem.val() == ''){
retorno.html('Por favor informe sua mensagem!');
mensagem.addClass('erro').focus();
return false;
} else {
mensagem.removeClass('erro');
}
if($('#concordo-contato').is(':checked') == false){
retorno.html('Você precisa concordar com a Política de Privacidade!');
return false;
}
//return false;
// --- valida captcha
var validate = false;
$.ajax({
url : http + $idioma + '/ajax/valida-post/',
async : false,
type : 'post',
data : { 'validate' : $this.find('input[name^=captcha]').val() },
success : function(json){
validate = json.status;
}
});
if(!validate){
retorno.removeClass('sucesso').addClass('erro').html('');
return false;
}
// --- //
retorno.html('Enviando...').removeClass('erro').addClass('sucesso');
$this.addClass('loading');
var $data = $this.serialize();
$.ajax({ url:http + $idioma + '/ajax/contato/', type:'POST', data:$data, cache:false, success:function(response){
if(response == 'ok'){
retorno.html('Contato enviado com sucesso. Retornaremos em breve! ;)');
retorno.removeClass('erro').addClass('sucesso');
$('#formulario-contato')[0].reset();
}
else if(response == 'captcha-invalido'){
retorno.html('Captcha inválido. Atualize a página e tente novamente!');
retorno.removeClass('sucesso').addClass('erro');
}
else if(response == 'erro'){
retorno.html('Ocorreu um erro ao enviar seu contato.
Atualize a página e tente novamente ou nos informe por telefone para que possamos corrigir o problema.');
retorno.removeClass('sucesso').addClass('erro');
}
$this.removeClass('loading');
}});
} else {
retorno.html('Ainda enviando...');
retorno.removeClass('sucesso').addClass('erro');
}
});
// --- informativo download
$('#form-informativo-download').submit(function(evt){
evt.preventDefault();
var $this = $(this),
nome = $('#nome'),
email = $('#email'),
telefone = $('#telefone'),
retorno = $this.find('.retorno').removeClass('sucesso').addClass('erro');
if(!$this.hasClass('enviando')){
if(nome.val() == ''){
retorno.html('Por favor informe seu nome!');
nome.addClass('erro').focus();
return false;
} else {
nome.removeClass('erro');
}
if(email.val() == ''){
retorno.html('Por favor informe seu e-mail!');
email.addClass('erro').focus();
return false;
}
else if(verificaEmail(email.val())){
retorno.html('Por favor forneça um e-mail válido!');
email.addClass('erro').focus();
return false;
} else {
email.removeClass('erro');
}
if(telefone.val() == ''){
retorno.html('Por favor informe seu telefone!');
telefone.addClass('erro').focus();
return false;
} else {
telefone.removeClass('erro');
}
if($('#concordo-informativo-download').is(':checked') == false){
retorno.html('Você precisa concordar com a Política de Privacidade!');
return false;
}
// -- //
var validate = false;
$.ajax({ url: http + $idioma + '/ajax/valida-post/', async:false, type:'POST', data:{ 'validate' : $this.find('input[name^=captcha]').val() }, success:function(json){
validate = json.status;
}});
if(!validate){
retorno.removeClass('sucesso').addClass('erro').html('Captcha inválido. Atualize a página e tente novamente!');
return false;
}
$this.addClass('enviando');
retorno.html('Enviando...').removeClass('erro').addClass('sucesso');
var data = $this.serialize();
$.ajax({ url : http + $idioma + '/ajax/informativo-download/', type:'POST', data:data, cache:false, success:function(response){
if(response == 'ok'){
retorno.html('Cadastro realizado com sucesso. Você receberá o link de acesso para o arquivo no seu e-mail!');
retorno.removeClass('erro').addClass('sucesso');
$this.get(0).reset();
$this.removeClass('enviando');
} else {
retorno.html('Ocorreu um erro ao realizar seu cadastro. Nos informe por telefone para que possamos corrigir o problema!').removeClass('sucesso').addClass('erro');
$this.removeClass('enviando');
}
}});
} else {
retorno.html('Ainda enviando...').removeClass('erro').addClass('sucesso');
}
});
// --- requisição de remoção - encarregado dpo
$('#requisicao-remocao-dados').submit(function(evt){
evt.preventDefault();
var $this = $(this),
$cookieID = $('#cookieID').val(),
$nome = $('#nome'),
$sobrenome = $('#sobrenome'),
$email = $('#email'),
$cpf = $('#cpf'),
$solicitacao = $('input[name^=solicitacao]').is(':checked'),
$mensagem = $('#mensagem'),
$retorno_remocao = $this.find('.retorno-remocao').removeClass('sucesso').addClass('erro');
if($nome.val() == ''){
$retorno_remocao.html('Por favor informe seu nome!');
$nome.addClass('erro').focus();
return false;
} else {
$nome.removeClass('erro');
}
if($sobrenome.val() == ''){
$retorno_remocao.html('Preencha seu sobrenome!');
$sobrenome.addClass('erro').focus();
return false;
} else {
$sobrenome.removeClass('erro');
}
/*
if(verificaEmail($email.val()) == false){
$retorno_remocao.html('Por favor informe seu e-mail!');
$email.addClass('erro').focus();
return false;
} else {
$email.removeClass('erro');
}
*/
if($email.val() == ''){
$retorno_remocao.html('Por favor informe seu e-mail!');
$email.addClass('erro').focus();
return false;
}
else if(verificaEmail($email.val())){
$retorno_remocao.html('Por favor forneça um e-mail válido!');
$email.addClass('erro').focus();
return false;
} else {
$email.removeClass('erro');
}
if($cpf.val() == ''){
$retorno_remocao.html('Preencha o seu CPF!');
$cpf.addClass('erro').focus();
return false;
} else {
$cpf.removeClass('erro');
}
if(validaCPF($cpf.val()) == false){
$retorno_remocao.html('Preencha um CPF válido!');
$cpf.addClass('erro').focus();
return false;
} else {
$cpf.removeClass('erro');
}
if($solicitacao == false){
$retorno_remocao.html('Selecione o motivo da sua solicitação!');
return false;
}
if($mensagem.val() == ''){
$retorno_remocao.html('Detalhe sua solicitação!');
$mensagem.addClass('erro').focus();
return false;
} else {
$mensagem.removeClass('erro');
}
if($cookieID == ''){
$retorno_remocao.html('Não é possível solicitar uma exclusão, pois não identificamos um cookie de políticas no seu navegador!');
$retorno_remocao.removeClass('sucesso').addClass('erro');
return false;
}
// -- //
$retorno_remocao.html('Enviando solicitação...');
$retorno_remocao.removeClass('erro').addClass('sucesso');
// -- //
var $url = http + 'ajax/politicas/',
$data = { 'acao' : 'requisicao-remocao',
'cookie-lgpd' : $cookieID,
'nome' : $nome.val(),
'sobrenome' : $sobrenome.val(),
'email' : $email.val(),
'cpf' : $cpf.val(),
'solicitacao' : $('input[name^=solicitacao]:checked').val(),
'mensagem' : $mensagem.val() };
$.ajax({ url:$url, data:$data, type:'POST', cache:false, async:false, dataType:'json', success:function($retorno){
var $msg = $retorno.msg;
if($msg == 'ok'){
$retorno_remocao.html('Requisição de remoção realizada com sucesso!');
$retorno_remocao.removeClass('erro').addClass('sucesso');
// -- remoção dos storages
localStorage.removeItem('politicas-igna-aceito');
localStorage.removeItem('politicas-igna-cookie');
localStorage.removeItem('politicas-igna-itens');
// -- //
/*
setTimeout(function(){
window.location.href = http;
//window.location.reload();
},2000);
*/
}
else if($msg == 'inativo'){
$retorno_remocao.html('O cookie que você está solicitando exclusão não existe.
Portanto, não é necessário proceder com requisição de remoção!');
$retorno_remocao.removeClass('sucesso').addClass('erro');
return false;
} else {
$retorno_remocao.html($msg);
$retorno_remocao.removeClass('sucesso').addClass('erro');
return false;
}
}});
});
});