// JavaScript Document

function OnLoad() {
	if (document.getElementById){ // IE5 NN6
		document.getElementById("loading").style.visibility="hidden";
	}else if (document.layers){ // NN4
		document.loading.visibility="hidden";
	}else if (document.all){ // IE4
		document.all.loading.style.visibility="hidden";
	}
	
	document.getElementById("corpo").style.visibility="visible";
}

//Mostra/Esconde os formulários de acordo com o selecionado na combo box
function tipoCadastro () {
	if (document.getElementById("selecionaCadastro").value == "medico") {
		document.getElementById("cadastroMedicos").style.visibility = "visible";
		document.getElementById("cadastroEntidades").style.visibility = "hidden";
		document.getElementById("cadastroMedicos").style.zIndex = "2"
		document.getElementById("cadastroEntidades").style.zIndex = "1";
		//document.getElementById("cadastroMedicos").style.position = "relative";
		//document.getElementById("cadastroEntidades").style.position = "absolute";		
	} else
			if (document.getElementById("selecionaCadastro").value == "entidade") {
				document.getElementById("cadastroEntidades").style.visibility = "visible";	
				document.getElementById("cadastroMedicos").style.visibility = "hidden";
				document.getElementById("cadastroMedicos").style.zIndex = "1"
				document.getElementById("cadastroEntidades").style.zIndex = "2";
				//document.getElementById("cadastroEntidades").style.position = "relative";
				//document.getElementById("cadastroMedicos").style.position = "absolute";
			} else {
						document.getElementById("cadastroMedicos").style.visibility = "hidden";
						document.getElementById("cadastroEntidades").style.visibility = "hidden";
			}
}

// Verifica se os campos de senha e email estão iguais as suas contra-provas.
function verificaSenhaEmail(campo1,campo2) {
	if (document.getElementById(campo1).value != "" && document.getElementById(campo2).value != ""){
		if (document.getElementById(campo1).value == document.getElementById(campo2).value){
			document.getElementById(campo1).style.backgroundColor="green";
			document.getElementById(campo2).style.backgroundColor="green";
			document.getElementById(campo1).style.color="white";
			document.getElementById(campo2).style.color="white";
		} else {			
				document.getElementById(campo1).style.backgroundColor="red";
				document.getElementById(campo2).style.backgroundColor="red";
				document.getElementById(campo1).style.color="white";
				document.getElementById(campo2).style.color="white";
		}
	}
	//if (campo1.search(/email/i) == -1 || campo2.search(/email/i) == -1) {
		if (document.getElementById(campo1).value == "" || document.getElementById(campo2).value == ""){
				document.getElementById(campo1).style.backgroundColor="white";
				document.getElementById(campo2).style.backgroundColor="white";
				document.getElementById(campo1).style.color="black";
				document.getElementById(campo2).style.color="black";
		}
	//}
}

//Verifica se todos os campos do formulário para médicos foi preenchido e libera o botão de submit
function verificaPreenchimentoMedico(senha1,senha2,email1,email2,campoCRM,campoUF,numeroCPF) {
	if (campoCRM != "null") {
		if (document.getElementById(campoCRM).value != "") {
				document.getElementById(campoCRM).style.backgroundColor="green";
				document.getElementById(campoCRM).style.color="white";			
		} else {
				document.getElementById(campoCRM).style.backgroundColor="white";
				document.getElementById(campoCRM).style.color="black";		
		}
	}
	
	if (campoUF != "null") {
		if (document.getElementById(campoUF).value != "") {
				document.getElementById(campoUF).style.backgroundColor="green";
				document.getElementById(campoUF).style.color="white";			
		} else {
				document.getElementById(campoUF).style.backgroundColor="white";
				document.getElementById(campoUF).style.color="black";		
		}
	}
}

//verifica se todos os campos do formulário para entidades foi preenchido e libera o botão de submit
function verificaPreenchimentoEntidade(senha1,senha2,email1,email2,campoCNPJ,campoUF,nomeEntidade,nomeResponsavel) {
	if (document.getElementById(campoUF).value != "") {
			document.getElementById(campoUF).style.backgroundColor="green";
			document.getElementById(campoUF).style.color="white";			
	} else {
			document.getElementById(campoUF).style.backgroundColor="white";
			document.getElementById(campoUF).style.color="black";		
	}
	
	if (document.getElementById(nomeResponsavel).value != "") {
			document.getElementById(nomeResponsavel).style.backgroundColor="green";
			document.getElementById(nomeResponsavel).style.color="white";			
	} else {
			document.getElementById(nomeResponsavel).style.backgroundColor="white";
			document.getElementById(nomeResponsavel).style.color="black";		
	}
	
	if (document.getElementById(nomeEntidade).value != "") {
			document.getElementById(nomeEntidade).style.backgroundColor="green";
			document.getElementById(nomeEntidade).style.color="white";			
	} else {
			document.getElementById(nomeEntidade).style.backgroundColor="white";
			document.getElementById(nomeEntidade).style.color="black";		
	}
}

//verifica se o e-mail é válido
function validaEmail(field) {
				function isEmail(str) {
							var supported = 0;
							if (window.RegExp) {
								var tempStr = "a";
								var tempReg = new RegExp(tempStr);
								if (tempReg.test(tempStr)) supported = 1;
							}
					
							if (!supported) 
							return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
					
							var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)|( )|(\\.@)");
							var r2 = new RegExp("^.[a-zA-Z0-9\\-\\.\\_]+\\@(\\[?)[a-zA-Z0-9\\-\\.]+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");
					
							return (!r1.test(str) && r2.test(str));
						}
						
				if (field.value != "") {
					if (!isEmail(field.value)) {
						alert("Digite o E-MAIL corretamente");
						//field.style.backgroundColor = "red";
						//field.style.color = "white";
						setTimeout(function(){field.focus();field.select();},10);
						//field.value = "Digite um e-mail válido!"
						return false;
					} else {
						field.style.backgroundColor = "green";
						field.style.color = "white";
						return true;	
					}
				}
}


function validaCNPJ(field) { 
CNPJ = field.value;
erro = new String;
//if (CNPJ.length < 14) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
//if ((CNPJ.charAt(2) != ".") || (CNPJ.charAt(6) != ".") || (CNPJ.charAt(10) != "/") || (CNPJ.charAt(15) != "-")){
//if (erro.length == 0) erro += "E' necessarios preencher corretamente o numero do CNPJ! \n\n";
//}
//substituir os caracteres que nao sao numeros
if(document.layers && parseInt(navigator.appVersion) == 4){
	x = CNPJ.substring(0,2);
	x += CNPJ.substring(3,6);
	x += CNPJ.substring(7,10);
	x += CNPJ.substring(11,15);
	x += CNPJ.substring(16,18);
	CNPJ = x; 
} else {
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace(".","");
	CNPJ = CNPJ.replace("-","");
	CNPJ = CNPJ.replace("/","");
}
var nonNumbers = /\D/;
if (nonNumbers.test(CNPJ)) erro += "A verificacao de CNPJ suporta apenas numeros! \n\n"; 
var a = [];
var b = new Number;
var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
for (i=0; i<12; i++){
a[i] = CNPJ.charAt(i);
b += a[i] * c[i+1];
}
if ((x = b % 11) < 2) { a[12] = 0 } else { a[12] = 11-x }
b = 0;
for (y=0; y<13; y++) {
b += (a[y] * c[y]); 
}
if ((x = b % 11) < 2) { a[13] = 0; } else { a[13] = 11-x; }
if ((CNPJ.charAt(12) != a[12]) || (CNPJ.charAt(13) != a[13])){
erro +="Digito verificador com problema!";

}
if (field.value == "") {
field.style.backgroundColor="white";
field.style.color="black";	
} else {
	if (erro.length > 0){
	field.style.backgroundColor="red";
	field.style.color="white";
	alert("Digite um CNPJ válido!");
	setTimeout(function(){field.focus();field.select();},10);
	//field.value = "Digite um CNPJ válido!"	
	return false;
	} else {
	field.style.backgroundColor="green";
	field.style.color="white";	
	return true;
	}
}

}



function somenteNumeros(evt)
      {
         var charCode = (evt.which) ? evt.which : event.keyCode
         if (charCode > 31 && (charCode < 48 || charCode > 57))
            return false;

         return true;
      }
	 
	 
	function validaCPF(field) {
var CPF = field.value; // Recebe o valor digitado no campo



// Aqui começa a checagem do CPF
var POSICAO, I, SOMA, DV, DV_INFORMADO;
var DIGITO = new Array(10);
DV_INFORMADO = CPF.substr(9, 2); // Retira os dois últimos dígitos do número informado

// Desemembra o número do CPF na array DIGITO
for (I=0; I<=8; I++) {
  DIGITO[I] = CPF.substr( I, 1);
}

// Calcula o valor do 10º dígito da verificação
POSICAO = 10;
SOMA = 0;
   for (I=0; I<=8; I++) {
      SOMA = SOMA + DIGITO[I] * POSICAO;
      POSICAO = POSICAO - 1;
   }
DIGITO[9] = SOMA % 11;
   if (DIGITO[9] < 2) {
        DIGITO[9] = 0;
}
   else{
       DIGITO[9] = 11 - DIGITO[9];
}

// Calcula o valor do 11º dígito da verificação
POSICAO = 11;
SOMA = 0;
   for (I=0; I<=9; I++) {
      SOMA = SOMA + DIGITO[I] * POSICAO;
      POSICAO = POSICAO - 1;
   }
DIGITO[10] = SOMA % 11;
   if (DIGITO[10] < 2) {
        DIGITO[10] = 0;
   }
   else {
        DIGITO[10] = 11 - DIGITO[10];
   }

// Verifica se os valores dos dígitos verificadores conferem
DV = DIGITO[9] * 10 + DIGITO[10];
if (field.value != "") {
	   if (DV != DV_INFORMADO) {
			field.style.backgroundColor="red";
			field.style.color="white";
			 alert('Digite um CPF válido!');
			setTimeout(function(){field.focus();field.select();},10);
		 return false;
	   } else {
			field.style.backgroundColor="green";
			field.style.color="white";   
	   } 
} else {
		field.style.backgroundColor="white";
		field.style.color="black";  	
}
}

function abreFormulario(pagina){
  var strPagina = pagina
  window.open(strPagina,"PaginaDetalhe","toolbar=no,location=no,directories=no,status=no,menubar=yes,scrollbars=yes,resizable=no,width=650,height=700");
}


function validaCamposMedico(){

	var email,emailConfirmacao,senha,senhaConfirmacao;
	
	email = document.getElementById('emailMedico').value;
	emailConfirmacao = document.getElementById('confirmaEmailMedico').value;
	senha = document.getElementById('senhaMedico').value;
	senhaConfirmacao = document.getElementById('confirmaSenhaMedico').value;
	
	var msg='Os seguintes campos estão vazios:\n';
	if (email==''){
		msg=(msg+'\n*Email');
	}
	if (emailConfirmacao==''){
		msg=(msg+'\n*Confirmação email');
	}
	if (senha==''){
		msg=(msg+'\n*Senha');
	}
	if (senhaConfirmacao==''){
		msg=(msg+'\n*Confirmação senha');
	}
	if (msg!='Os seguintes campos estão vazios:\n'){
		alert(msg);
		return false;
	}else{
		if (email!=emailConfirmacao){
		   alert("O email e a confirmação do email devem ser iguais.");
		   return false;
		}else{
			if(senha!=senhaConfirmacao){
				alert("A senha e a confirmação da senha devem ser iguais.");
				return false;
			}else{
				return true;
			}
		}
	}
	
}


function validaCamposEntidade(){

	var email,emailConfirmacao,senha,senhaConfirmacao,numeroCNPJ,unidadeFederativaEntidade,nomeDaEntidade,nomeResponsavel;
	
	email = document.getElementById('emailEntidade').value;
	emailConfirmacao = document.getElementById('confirmaEmailEntidade').value;
	senha = document.getElementById('senhaEntidade').value;
	senhaConfirmacao = document.getElementById('confirmaSenhaEntidade').value;
	numeroCNPJ = document.getElementById('numeroCNPJ').value;
	unidadeFederativaEntidade= document.getElementById('unidadeFederativaEntidade').value;
	nomeDaEntidade= document.getElementById('nomeDaEntidade').value;
	nomeResponsavel= document.getElementById('nomeResponsavel').value;
	
	var msg='Os seguintes campos estão vazios:\n';
	if (nomeDaEntidade==''){
		msg=(msg+'\n*Nome da entidade');
	}
	if (nomeResponsavel==''){
		msg=(msg+'\n*Nome da responsável');
	}
	if (numeroCNPJ==''){
		msg=(msg+'\n*Numero do CNPJ');
	}
	if (unidadeFederativaEntidade==''){
		msg=(msg+'\n*Representação');
	}
	if (email==''){
		msg=(msg+'\n*Email');
	}
	if (emailConfirmacao==''){
		msg=(msg+'\n*Confirmação email');
	}
	if (senha==''){
		msg=(msg+'\n*Senha');
	}
	if (senhaConfirmacao==''){
		msg=(msg+'\n*Confirmação senha');
	}
	if (msg!='Os seguintes campos estão vazios:\n'){
		alert(msg);
		return false;
	}else{
		if (email!=emailConfirmacao){
		   alert("O email e a confirmação do email devem ser iguais.");
		   return false;
		}else{
			if(senha!=senhaConfirmacao){
				alert("A senha e a confirmação da senha devem ser iguais.");
				return false;
			}else{
				return true;
			}
		}
	}
	
}

