// VARIAVES PARA O LOAD BUTTON
var textLoad = "<i class='fa fa-circle-o-notch fa-spin'></i>";
var textButton = '';
var btn = null;

$(window).on('load', function(){
    $('.d-none').hide();
    $('.d-none').removeClass('d-none');
    
    //window.scrollTo(0,1);
    if (window.location.hash && window.location.hash == '#_=_') {
        history.pushState('','', window.location.href.replace(/#.*/, ''));
    }
    
    //$(".container-cookie").delay(1000).show("clip"); dentro do cookie.js
    //toggleFullScreen();
    
});

/*
dentro do cookie.js
$('body').on('click','.actAceitarCookie', function(){
    get_ajax({}, 'comdono/ajax/cad_ajax/aceitarCookie', 
        success =>{
            $(".container-cookie").hide("clip");
        },$erro =>{
            $(".container-cookie").hide("clip");
        }
    );
}); */


//alert('Sua Net está uma bosta');

function get_form($form)
{
    
    data = [];
    var nameRadio = [];
    
    //var data = $("#form-imovel").find('input,textarea').serializeArray();
    $($form).find('input:not([type=radio]):input:not([type=checkbox]):input:not([type=file])').each(function(key,value){
        if(this.name != "")
            data.push({"name": this.name, "value": this.value});
    });
    $($form).find('textarea').each(function(key,value)    {
        if(this.name != ""){
            
            if(typeof CKEDITOR !== 'undefined')
                data.push({"name": this.name, "value": CKEDITOR.instances[this.name].getData()});
            else
                data.push({"name": this.name, "value": this.value});
        }
    });
    
    $($form).find('input[type=radio]').each(function(key,value){
        if(nameRadio[this.name] == undefined)
            nameRadio[this.name] = '';
        if($(this).is(':checked'))
            nameRadio[this.name] = this.value;
    });
    
    for(var name in nameRadio){
        data.push({"name": name, "value": nameRadio[name]});
    };
    
    $($form).find('select option:selected').each(function(key,value)    {
        if(this.parentElement.localName == 'select')
            data.push({"name": this.parentElement.name, "value": this.value});
            
        if(this.parentElement.parentElement.localName == 'select')
            data.push({"name": this.parentElement.parentElement.name, "value": this.value});
    });
    
    $($form).find('input[type=checkbox]:checked').each(function(key,value)    {
        if(this.name != "")
            data.push({"name": this.name, "value": this.value});
    });
    
    $($form).find('input[type=checkbox]:not(:checked)').each(function(key,value)    {
        if(this.name != "")
            data.push({"name": this.name, "value": ""});
    });
    
    
    return data;
}


function get_ajax($data = [], $uri, $success = null, $error = null )
{
    if($error == null)
    {
        $error = function($erro){
            if($erro.msg != undefined)
                alert($erro.msg);
            else{
                console.log($erro.responseText);
                    msg = $($($erro.responseText)[7]).find('h1').text();
                if(msg == '' || msg == undefined || msg == 'undefined')
                    msg = $($($erro.responseText)[8]).find('h1').text();
                if(msg == '' || msg == undefined || msg == 'undefined')
                    msg =   $($erro.responseText).find('h4').text()+'\n'+$($($erro.responseText).find('p')[1]).text();
                if(msg == '' || msg == undefined || msg == 'undefined')
                    msg =   "ERRO!";
                alert(msg);
            }
        };
    }
    
    if($success == null)
    {
        $success = function(e){
            console.log(e);
        };
    }
    
    $.ajax({
		url: base_url+$uri, 
		dataType: 'json',
		type: 'POST',
		data: $data,
		success: function(retorno)
		{
		    loadButton(null,false);
		    if(retorno.valid == false)
		    {   
		        $error(retorno);
		    }
		    else
		    {
		        $success(retorno)
		    }
		},
		error: function(error)
		{
		    loadButton(null,false);
		    $error(error);
		}
    });
    
 }
 

function toggleFullScreen() {
      var doc = window.document;
      var docEl = doc.documentElement;
    
      var requestFullScreen = docEl.requestFullscreen || docEl.mozRequestFullScreen || docEl.webkitRequestFullScreen || docEl.msRequestFullscreen;
      var cancelFullScreen = doc.exitFullscreen || doc.mozCancelFullScreen || doc.webkitExitFullscreen || doc.msExitFullscreen;
    
      if(!doc.fullscreenElement && !doc.mozFullScreenElement && !doc.webkitFullscreenElement && !doc.msFullscreenElement) {
        requestFullScreen.call(docEl);
      }
      else {
        cancelFullScreen.call(doc);
      }
    }
function loadButton(button = null, disabled = true)
{
    if(button != null)
        btn = button;
        
    if(disabled == true)
    {
        textButton = btn.html();
        btn.prop('disabled', true);
        btn.html(textLoad);//+' '+textButton
    }
    else
    {
	    if(btn != null){
            	btn.prop('disabled', false);
	    	btn.html(textButton);
	    	btn = null;
	    }
    }
}

function notifySuccess(text){
    $(".notifyAct").notify(text,"success");
    $('html, body').animate({
        scrollTop: $("main").offset().top
    }, 500);
}

function notifyErros(text){
    $(".notifyAct").notify(text,{position:"bottom center"});
    $('html, body').animate({
        scrollTop: $("main").offset().top
    }, 500);
}
    
/*var $change = function(c){
    
    console.log('change');
    //c.submit;
}
var $select = function(c){
    console.log('select');
    //c.submit;
}*/

var availableTags = [];
//console.log("selectBusca ",$('#selectBusca').data('selectbusca'))
if($('#selectBusca').length > 0)
{
    $.each($('#selectBusca').data('selectbusca'), function(id, val){
        availableTags[0] = 'Brasília'
        availableTags[id+1] = val.bairro
    });
}


if($(".act-busca").length > 0)
{
    $(".act-busca").autocomplete({
        change: change,    
        select: submit,
        source: availableTags,
        autoFocus: true,
        minLength: 0,
        open: function(event, ui) {
            if(mobileAndTabletcheck() == true)
                $('.ui-autocomplete').off('menufocus hover mouseover mouseenter');
        }
    }).keydown(function(event){
        if(event.keyCode == 13) {
            $(this).data('ui-autocomplete')._trigger('select', 'autocompleteselect', {item:{value:$(this).val()}});
        }
     });
      
    $('.act-busca').click(function() {
       $(this).autocomplete("search");
    }); 
}
sub = true  
function submit(e, ui)
{
    console.log('submit');
    //window.scrollTo(0,1); 
    
    $('#bairro_imovel').val('');
    sub = false
    console.log('main.js','submit');
    $('.act-busca').val(ui.item.value);
    
    console.log('submit submit #formPesquisa');
    $('#formPesquisa').submit();
    
     $.each($('#selectBusca').data('selectbusca'), function(id, val){
        if(val.bairro.toUpperCase() == ui.item.value.toUpperCase())
        {
            $('#bairro_imovel').val(val.bairro).change();
            $('.act-busca').val('');
        }
    });
}
function change(e, ui)
{
    
    console.log('main.js','change');
    if(sub){
        $('#bairro_imovel').val('');
        if(ui.item != null){
            $('.act-busca').val(ui.item.value);
            
            $.each($('#selectBusca').data('selectbusca'), function(id, val){
                if(val.bairro.toUpperCase() == ui.item.value.toUpperCase())
                {
                    $('#bairro_imovel').val(val.bairro).change();
                    $('.act-busca').val('');
                }
            });
            
        }
        else{
            console.log('#auto_c',$('#auto_c').val(),$('.act-busca').val());
            //$('.act-busca').val($('#auto_c').val());
            
            $valid = false;
            $.each($('#selectBusca').data('selectbusca'), function(id, val){
                if($('#auto_c').val() != undefined && val.bairro.toUpperCase() == $('#auto_c').val().toUpperCase())
                {
                    $('#bairro_imovel').val(val.bairro).change();
                    $('.act-busca').val('');
                }
            });
        }
        console.log('submit change #formPesquisa');
        $('#formPesquisa').submit();
    }
    
    sub = false;
}

function validaCPF(cpf)
  {
    cpf = cpf.replace(/[^0-9]/g,'');
      
    var numeros, digitos, soma, i, resultado, digitos_iguais;
    digitos_iguais = 1;
    if (cpf.length < 11)
          return false;
    for (i = 0; i < cpf.length - 1; i++)
          if (cpf.charAt(i) != cpf.charAt(i + 1))
                {
                digitos_iguais = 0;
                break;
                }
    if (!digitos_iguais)
          {
          numeros = cpf.substring(0,9);
          digitos = cpf.substring(9);
          soma = 0;
          for (i = 10; i > 1; i--)
                soma += numeros.charAt(10 - i) * i;
          resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
          if (resultado != digitos.charAt(0))
                return false;
          numeros = cpf.substring(0,10);
          soma = 0;
          for (i = 11; i > 1; i--)
                soma += numeros.charAt(11 - i) * i;
          resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
          if (resultado != digitos.charAt(1))
                return false;
          return true;
          }
    else
        return false;
  }
  
function validaCNPJ(cnpj) {
 
    cnpj = cnpj.replace(/[^\d]+/g,'');
 
    if(cnpj == '') return false;
     
    if (cnpj.length != 14)
        return false;
 
    // Elimina CNPJs invalidos conhecidos
    if (cnpj == "00000000000000" || 
        cnpj == "11111111111111" || 
        cnpj == "22222222222222" || 
        cnpj == "33333333333333" || 
        cnpj == "44444444444444" || 
        cnpj == "55555555555555" || 
        cnpj == "66666666666666" || 
        cnpj == "77777777777777" || 
        cnpj == "88888888888888" || 
        cnpj == "99999999999999")
        return false;
         
    // Valida DVs
    tamanho = cnpj.length - 2
    numeros = cnpj.substring(0,tamanho);
    digitos = cnpj.substring(tamanho);
    soma = 0;
    pos = tamanho - 7;
    for (i = tamanho; i >= 1; i--) {
      soma += numeros.charAt(tamanho - i) * pos--;
      if (pos < 2)
            pos = 9;
    }
    resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
    if (resultado != digitos.charAt(0))
        return false;
         
    tamanho = tamanho + 1;
    numeros = cnpj.substring(0,tamanho);
    soma = 0;
    pos = tamanho - 7;
    for (i = tamanho; i >= 1; i--) {
      soma += numeros.charAt(tamanho - i) * pos--;
      if (pos < 2)
            pos = 9;
    }
    resultado = soma % 11 < 2 ? 0 : 11 - soma % 11;
    if (resultado != digitos.charAt(1))
          return false;
           
    return true;
    
}