
var msgNasc1 = 'Desculpe, data invalida!';
var msgNasc3 = 'Desculpe, "ano" invalido!';
var msgNasc2 = 'Desculpe, CNPJ invalido! Por favor redigite-o!';

function limpaData(pos1, pos2, pos3) {
	document.getElementById(pos1).value="0";
	document.getElementById(pos2).value="0";
	document.getElementById(pos3).value="-1";
	document.getElementById(pos1).focus();
	
}

function Juntacnpj(id1,id2,id3,id4,id5){
	if((document.getElementById(id1).value != "")&&(document.getElementById(id2).value != "")&&(document.getElementById(id3).value != "")&&(document.getElementById(id4).value != "")&&(document.getElementById(id5).value != "")&&(((document.getElementById(id5).value).length) == "2")){
			var cnpjVer = document.getElementById(id1).value+document.getElementById(id2).value+document.getElementById(id3).value+document.getElementById(id4).value+document.getElementById(id5).value ;
			if (valida_cnpj(cnpjVer) == false){
				document.getElementById(id1).value = "";
				document.getElementById(id2).value = "";
				document.getElementById(id3).value = "";
				document.getElementById(id4).value = "";
				document.getElementById(id5).value = "";
				return 2;
			}
	}
}

function verificaData(pos, tipo) {
	if(tipo==1) {
		var pos1 = pos; 
		var pos2 = pos+1;
		var pos3 = pos+2;
	}
	if(tipo==2) {
		var pos1 = pos-1; 
		var pos2 = pos;
		var pos3 = pos+1;
	}
	if(tipo==3) {
		var pos1 = pos-2; 
		var pos2 = pos-1;
		var pos3 = pos;
	}
	var tamdia = document.getElementById(pos1).value.length; 
	var tammes = document.getElementById(pos2).value.length; 
	var tamano = document.getElementById(pos3).value.length;
	var tamtotal = tamdia+tammes+tamano;
	
	var myDayStr = document.getElementById(pos1).value; 
	var myMonthStr = (document.getElementById(pos2).value)-1; 
	var myYearStr = document.getElementById(pos3).value; 
	var myYearApos = parseInt(document.getElementById(pos3).value)+18;//18anos min
	myYearApos2 = myYearApos.toString();
	
	var myDate = new Date(); 
	myDate.setFullYear( myYearStr, myMonthStr, myDayStr ); 
	var hoje = new Date();
	var diar18 = new Date();
	diar18.setFullYear( myYearApos2, myMonthStr, myDayStr );
	var d = new Date();
	d.setFullYear( d.getFullYear()-125, d.getMonth(), d.getDate() );

	
	if( ( myDate.getMonth() != myMonthStr ) && (tamtotal==8) ) { 
		limpaData(pos1, pos2, pos3);
		return 1;
	}
	else if( (d > myDate) && (tamtotal==8) ) {
		document.getElementById(pos3).focus();
		document.getElementById(pos3).value='';
		return 3;
	}
	else {
		return 4;
	}
}


function valida_cnpj(cnpj)
      {
      var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;
      digitos_iguais = 1;
      if (cnpj.length < 14 && cnpj.length < 15)
            return false;
      for (i = 0; i < cnpj.length - 1; i++)
            if (cnpj.charAt(i) != cnpj.charAt(i + 1))
                  {
                  digitos_iguais = 0;
                  break;
                  }
      if (!digitos_iguais)
            {
            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;
            }
      else{
            return false;
      } 
}


function validaCPF(cpf1,cpf2,cpf3,cpf4) {
	var tamcpf1 = document.getElementById(cpf1).value.length; 
	var tamcpf2 = document.getElementById(cpf2).value.length; 
	var tamcpf3 = document.getElementById(cpf3).value.length; 
	var tamcpf4 = document.getElementById(cpf4).value.length;
	var cpf = document.getElementById(cpf1).value + document.getElementById(cpf2).value + document.getElementById(cpf3).value + document.getElementById(cpf4).value;
	if ( (tamcpf1+tamcpf2+tamcpf3+tamcpf4) == 11) {
		var soma01 = 0;
		var multiplo01 = 2;
		var x = 0;
		var soma02 = 0;
		var multiplo02 = 2;
		var y = 0;
		for (i=8; i>=0; i--) {
			intchar01 = cpf.substr(i, 1);
			soma01 = soma01 + (intchar01*multiplo01);
			multiplo01++;
		}
		x = 11-(soma01%11);
		if(x==10 || x==11) x=0;
	
		for (i=9; i>=0; i--) {
			intchar02 = cpf.substr(i, 1);
			soma02 = soma02 + (intchar02*multiplo02);
			multiplo02++;
		}
		y = 11-(soma02%11);
		if(y==10 || y==11) y=0;
		
		intchar10 = cpf.substr(9, 1);
		intchar11 = cpf.substr(10, 1);
		if(x==intchar10 && y==intchar11) return true;
		else {
			document.getElementById(cpf1).value = '';
			document.getElementById(cpf2).value = '';
			document.getElementById(cpf3).value = '';
			document.getElementById(cpf4).value = '';
			alert ('Desculpe, CPF invalido!Por favor redigite-o.');
			document.getElementById(cpf1).focus();
			return false;
		}
	}
		
}

function TamanhoMax(pos, tamideal) {
	var valor = document.getElementById(pos).value;
	var tamreal = valor.length;
	if (tamreal==tamideal) {
		document.getElementById(pos+1).focus();
	}
}

