//########## Funções Gerais ##########//

//########## Funções de mensagens #######//

function confirma(id) {
   switch(id){
	case 1:
		msg = "Confirma a exclusão?";
		break;
	case 2:
		msg = "Confirma as alterações?";
		break;
	case 3:
		msg = "Confirma a inclusão?";
		break;	
	case 4:
		msg = "Esta exclusão irá deletar todo o conteúdo associado ao Programa de Jornalismo. Confirma a exclusão?";
		break;
	case 5:
		msg = "Esta edição já está cadastrada nesta data. Deseja alterar?";
		break;
	case 6:
		msg = "Esta ação irá deletar os dados do Programa de Auditório. Confirma a exclusão?";
		break;
	case 7:
		msg = "Esta exclusão irá deletar todo o conteúdo associado ao Programa. Confirma a exclusão?";
		break;	
	}
	 var confirma = confirm(msg)
	 
    if ( confirma){
        return true;
    } else {
        return false;
	 	event.returnValue=false;
    }
}

function confirmacao(msg) {
	
    var confirma = confirm(msg)
    if ( confirma ){
        return true;
    } else {
        return false;
        event.returnValue=false;
    }
}

//########## Fim Funções de mensagens #######//

//########## Função para limitar textarea #######//
function textCounter(field, countfield, maxlimit) {
    if (field.value.length > maxlimit)
        field.value = field.value.substring(0, maxlimit);
    else
        countfield.value = maxlimit - field.value.length;
}
//########## Final Função para limitar textarea #######//

$().ready(function() {


    //########## Fim Funções Gerais ##########//

    /*##################VALIDAÇÃO DE CPF##########################*/
    $("#cpf").blur(function() {
       
        var cpfDigitado = document.getElementById("cpf").value;
        var frmusuario = document.getElementById("form_user");
        var cpfp1 = cpfDigitado.substring(0,3);
        var cpfp2 = cpfDigitado.substring(4,7);
        var cpfp3 = cpfDigitado.substring(8,11);
        var cpfp4 = cpfDigitado.substring(12,14);

        var cpf = cpfp1+cpfp2+cpfp3+cpfp4;

        if(cpf == ""){
            $("#cpf").val("");
            return false;
        }

        if (cpf.length != 11 || cpf == "00000000000" || cpf == "11111111111"
            || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444"
            || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777"
            || cpf == "88888888888" || cpf == "99999999999"){

            document.getElementById("ErroCPF").innerHTML = "<br/>Número do CPF inválido.";
            document.getElementById("cpf").value = "";
            document.getElementById("cpf").style.borderColor = "red";
            document.getElementById("cpf").style.borderStyle = "dotted";
            return false;
        }
        add = 0;
        for (i=0; i < 9; i ++)
            add += parseInt(cpf.charAt(i)) * (10 - i);
        rev = 11 - (add % 11);
        if (rev == 10 || rev == 11)
            rev = 0;
        if (rev != parseInt(cpf.charAt(9))){
            document.getElementById("ErroCPF").innerHTML = "<br/>Número do CPF inválido.";
            document.getElementById("cpf").style.borderColor = "red";
            document.getElementById("cpf").style.borderStyle = "dotted";
            return false;
        }
        add = 0;
        for (i = 0; i < 10; i ++)
            add += parseInt(cpf.charAt(i)) * (11 - i);
        rev = 11 - (add % 11);
        if (rev == 10 || rev == 11)
            rev = 0;
        if (rev != parseInt(cpf.charAt(10))){
            document.getElementById("ErroCPF").innerHTML = "<br/>Número do CPF inválido.";
            document.getElementById("cpf").style.borderColor = "red";
            document.getElementById("cpf").borderStyle = "solid";
            return false;
        }

        document.getElementById("ErroCPF").innerHTML = "";
        document.getElementById("cpf").style.borderColor = "#4e8ac5";
        document.getElementById("cpf").style.borderStyle = "solid";
    });
    /*##################FINAL VALIDAÇÃO DE CPF##########################*/
	
    //########### Validação data e hora #########//
    
    $('.hora').blur(function(){
        //variáveis recebidas pelos inputs marcados com a classe 'hora'
        var hora1 = $('.hora:eq(0)').val();
        var hora2 = $('.hora:eq(1)').val();
	    
        var hora_val  	= hora1.substring(0,2);
        var minuto_val  = hora1.substring(3,5);
	    
        var hora_val2  	= hora2.substring(0,2);
        var minuto_val2  = hora2.substring(3,5);
	
        if((hora_val > 23) ||(minuto_val > 59)||(hora_val2 > 23) ||(minuto_val2 > 59) ||(hora1 == hora2)){
	    
            hora1 = "";
            hora2 = "";
    
            $('.Errorhora').html("Hora inválida!");
            $('.Errorhora').css('color','red');
            $('.hora').val("");
            $('.hora').css('border', '1px solid red');

            
   
            return false;
    
        }
     
        else {
            $('.Errorhora:eq(0)').empty();
            $('.hora').css({
                border:"1px solid #4e8ac5"
            });
        }
    });

    $('.hora:eq(1)').blur(function(){
        var hora1 = $('.hora:eq(0)').val();
        var hora2 = $('.hora:eq(1)').val();
        var int_hora1 = parseInt((hora1.substring(0,2)* 60) + hora1.substring(3,5));
        var int_hora2 = parseInt((hora2.substring(0,2)* 60) + hora2.substring(3,5));
        
        if(int_hora1 > int_hora2 && hora2 !='00:00'){
            $('.Errorhora').html("Hora inválida!");
            $('.Errorhora').css('color','red');
            $('.hora').val("");
            $('.hora').css('border', '1px solid red');

        }

        else {
            $('.Errorhora:eq(0)').empty();
            $('.hora').css({border:"1px solid #4e8ac5"})
            }
    });

    $('.date:eq(0)').blur(function() {
        // TESTO PARA SABER SE O CAMPO ESTÁ NULO OU NÃO
        /*if ($(".date").val() != "") {
			var data_1 = $('.date:eq(0)').val();
			var dt_emissao = parseInt(data_1.split("/")[2].toString() + data_1.split("/")[1].toString() + data_1.split("/")[0].toString());  
			*/
			
        var data_1 = $('.date:eq(0)').val();
        
		// GAMB PARA EVITAR MSG DE ERRO POR CAUSA DA MASCARA
        if(data_1 == '__/__/____') data_1 = "18/01/1976";
			
        var dia = data_1.substring(0,2);
        var mes = data_1.substring(3,5);
        var ano = data_1.substring(6,10);
			
        // verifica o dia valido para cada mes
        if ((dia < "01")||(dia < "01" || dia > "30") && (  mes == "04" || mes == "06" || mes == "09" || mes == "11" ) || dia > "31") {
            data_1 = "";
            $('.Errordata').html("Data inválida!");
            $('.Errordata').css('color','red');
            $('.date:eq(0)').val("");
            $('.date:eq(0)').css('border', '1px solid red');
            return false;
        } else {
            $('.Errordata').empty();
            $('.date:eq(0)').css({
                border:"1px solid #4e8ac5"
            });
        }
			
        if((ano < 1880)){
            data_1 = "";
            $('.Errordata').html("Data inválida!");
            $('.Errordata').css('color','red');
            $('.date:eq(0)').val("");
            $('.date:eq(0)').css('border', '1px solid red');
            return false;
        } else {
            $('.Errordata').empty();
            $('.date:eq(0)').css({
                border:"1px solid #4e8ac5"
            });
        }
			 
			
        // verifica se o mes e valido
        if (mes < 01 || mes > 12 ) {
            data_1 = "";
            $('.Errordata').html("Data inválida!");
            $('.date:eq(0)').val("");
            $('.date:eq(0)').css('border', '1px solid red');
            return false;
        }  else {
            $('.Errordata').empty();
            $(".date").css({
                border:"1px solid #4e8ac5"
            });
        }
			
        // verifica se e ano bissexto
        if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) {
            data_1 = "";
            $('.Errordata').html("Data inválida!");
            $('.date:eq(0)').val("");
            $('.date:eq(0)').css('border', '1px solid red');
            return false;
        } else {
            $('.Errordata').empty();
            $('.date:eq(0)').css({
                border:"1px solid #4e8ac5"
            });
        }
    });
            
    $('.date:eq(1)').blur(function() {

        var data_2 = $('.date:eq(1)').val();
			

		// GAMB PARA EVITAR MSG DE ERRO POR CAUSA DA MASCARA
        if(data_2 == '__/__/____') data_2 = "18/01/1976";       
        
        			
        var dia2 = data_2.substring(0,2);
        var mes2 = data_2.substring(3,5);
        var ano2 = data_2.substring(6,10);
         
			
        // verifica o dia valido para cada mes
        if ((dia2 < "01")||(dia2 < "01" || dia2 > "30") && (  mes2 == "04" || mes2 == "06" || mes2 == "09" || mes2 == "11" ) || dia2 > "31") {
            data_2 = "";
            $('.Errordata').html("Data inválida!");
            $('.date:eq(1)').val("");
            $('.date:eq(1)').css('border', '1px solid red');
            return false;
        } else {
            $('.Errordata').empty();
            $('.date:eq(1)').css({
                border:"1px solid #4e8ac5"
            });
        }
			
        // verifica se o mes e valido
        if (mes2 < 01 || mes2 > 12 ) {
            data_2 = "";
            $('.Errordata').html("Data inválida!");
            $('.date:eq(1)').val("");
            $('.date:eq(1)').css('border', '1px solid red');
            return false;
        }  else {
            $('.Errordata').empty();
            $('.date:eq(1)').css({
                border:"1px solid #4e8ac5"
            });
        }
			
        // verifica se e ano bissexto
        if (mes2 == 2 && ( dia2 < 01 || dia2 > 29 || ( dia2 > 28 && (parseInt(ano2 / 4) != ano2 / 4)))) {
            data_2 = "";
            $('.Errordata').html("Data inválida!");
            $('.date:eq(1)').val("");
            $('.date:eq(1)').css('border', '1px solid red');
            return false;
        } else {
            $('.Errordata').empty();
            $('.date:eq(1)').css({
                border:"1px solid #4e8ac5"
            });
        }

        var data_1 = $('.date:eq(0)').val();


        var dia = data_1.substring(0,2);
        var mes = data_1.substring(3,5);
        var ano = data_1.substring(6,10);

        var data_ini = ano + mes + dia;
        var data_fim = ano2 + mes2 + dia2;
			
        // passando tudo, valido se é maior ou não que a data de emissão
        if (data_fim < data_ini) {
            $('.Errordata').html("<br/>Data de Final deve ser maior ou igual à data Inicial!");
            $('.date:eq(1)').val("");
            $('.date:eq(1)').css('border', '1px solid red');
            return false;
        }
    });
    //########### Fim validação data #########//

    //############# Mascaras ##############//

    $(".date").mask("99/99/9999");
    $("#cpf").mask("999.999.999-99");
    $("#tel").mask("(99)9999-9999");
    $("#cep").mask("99999-999");
    $(".hora").mask("99:99");
    
	/*################## DESABILITA ENTER ##########################*/
	$("#cpf").keypress(function(e){ if(e.keyCode == 13){  return false;} });
	$(".hora").keypress(function(e){ if(e.keyCode == 13){ return false;} });
	$(".date").keypress(function(e){ if(e.keyCode == 13){ return false;} });
	$("#cep").keypress(function(e){ if(e.keyCode == 13){  return false;} });
	$("#tel").keypress(function(e){ if(e.keyCode == 13){  return false;} });

    
    //########### Fim Mascaras #########//
   
    
});
