$(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);
$('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);
// --- //
// --- fale conosco
$('#formulario-contato').on('submit',function(evt){
evt.preventDefault();
var $this = $(this);
$this.find('.erro').removeClass('erro');
$this.find('.retorno').html('');
$this.find('.campo.enviar .retorno').hide();
var retorno = $('#formulario-contato').find('> .retorno');
if(!$this.hasClass('loading')){
var nome = $('#nome-contato');
if(nome.val() == ''){
erro_campo(nome,'Por favor informe seu nome!');
return false;
}
else if(/[$#@"%*\(\)\\\/\{\}\[\]\^\!<>;:\?\|]+/g.test(nome.val())){
erro_campo(nome,'Por favor não utilize símbolos inválidos em seu nome!');
return false;
}
var empresa = $('#empresa-contato');
if(empresa.val() == ''){
erro_campo(empresa,'Por favor informe sua empresa!');
return false;
}
var email = $('#email-contato');
if(email.val() == ''){
erro_campo(email,'Por favor informe seu e-mail!');
return false;
}
else if(verificaEmail(email.val())){
erro_campo(email,'Por favor forneça um e-mail válido!');
return false;
}
var telefone = $('#telefone-contato');
if(telefone.val() == ''){
erro_campo(telefone,'Por favor informe seu telefone!');
return false;
}
var estado = $('#estado-contato');
if(estado.val() == ''){
erro_campo(estado,'Por favor informe o estado!');
return false;
}
var cidade = $('#cidade-contato');
if(cidade.val() == ''){
erro_campo(cidade,'Por favor informe a cidade!');
return false;
}
var assunto = $('#assunto-contato');
if(assunto.val() == ''){
erro_campo(assunto,'Por favor selecione o assunto!');
return false;
}
var mensagem = $('#mensagem-contato');
if(mensagem.val() == ''){
erro_campo(mensagem,'Escreva sua mensagem!');
return false;
}
if($('#concordo-contato:checked').length == 0){
erro_campo($this.find('[for="concordo-contato"]'),'Você precisa concordar com a Política de Privacidade!');
return false;
}
//$('.formulario form').addClass('loading');
//return false;
// --- valida captcha
var validate = false;
$.ajax({
url : http + '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, tente novamente ou nos informe por telefone caso o problema persista!');
return false;
}
// --- //
retorno.html('Enviando...').removeClass('erro').addClass('sucesso');
$this.addClass('loading');
var data = $this.serialize();
$.ajax({ url:http +'ajax/contato/', type:'POST', data:data, cache:false, success:function(response){
if(response == 'ok'){
retorno.html('Obrigado pelo contato. Retornaremos a sua solicitação assim que possível.');
retorno.removeClass('erro').addClass('sucesso');
$this[0].reset();
}
else if(response == 'captcha-invalido'){
retorno.html('Não foi possível enviar seu contato, por favor atualize a página e tente novamente!');
retorno.removeClass('sucesso').addClass('erro');
}
else if(response == 'erro'){
retorno.html('Ocorreu um erro ao enviar sua mensagem.
Por favor tente novamente ou nos informe o problema por telefone para que possamos corrigir o problema!');
retorno.removeClass('sucesso').addClass('erro');
}
$this.removeClass('loading');
}});
} else {
retorno.html('Ainda enviando... aguarde! ;)');
retorno.removeClass('sucesso').addClass('erro');
}
});
// --- requisicao de remocao
$('#requisicao-remocao-dados').on('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('');
$sobrenome.addClass('erro').focus();
return false;
} else {
$sobrenome.removeClass('erro');
}
if(validaMail($email.val()) == false){
$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('Escreva sua mensagem!');
$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-hjhering-aceito');
localStorage.removeItem('politicas-hjhering-cookie');
localStorage.removeItem('politicas-hjhering-itens');
// -- //
}
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;
}
}});
});
});