function testaCPF(campo1, campo2, campo3, campo4, id_cliente){
	if(campo1.value != "" && campo2.value != "" && campo3.value != "" && campo4.value != ""){	
		if(cpfValido(campo1, campo2, campo3, campo4)){
			cpfRepetido(campo1.value, campo2.value, campo3.value, campo4.value, id_cliente);//testar se já está cadastrado
		}
	}
}

function testaCNPJ(campo1, campo2, campo3, campo4, campo5, id_cliente){
	if(campo1.value != "" && campo2.value != "" && campo3.value != "" && campo4.value != "" && campo5.value != ""){
		if(cnpjValido(campo1, campo2, campo3, campo4, campo5)){
			cnpjRepetido(campo1.value, campo2.value, campo3.value, campo4.value, campo5.value, id_cliente);//testar se já está cadastrado
		}
	}
}

function cpfValido(campo1, campo2, campo3, campo4) {
	//var d = String(((campo.value.replace("-","")).replace(".","")).replace(".",""));	
	var d = String(campo1.value + campo2.value + campo3.value + campo4.value);
    var c = d.substr(0,9);
    var dv = d.substr(9,2);
    var d1 = 0;
    for (var i=0; i<9; i++) {
        d1 += c.charAt(i)*(10-i);
     }
    if (d1 == 0){
		alert('Preencha um CPF válido');
		campo1.select();
		return false;
	}
    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;
    if (dv.charAt(0) != d1){
		alert('Preencha um CPF válido');
		campo1.select();				
        return false;
    }
    d1 *= 2;
    for (var i = 0; i < 9; i++)    {
         d1 += c.charAt(i)*(11-i);
    }
    d1 = 11 - (d1 % 11);
    if (d1 > 9) d1 = 0;
    if (dv.charAt(1) != d1){
		alert('Preencha um CPF válido');
		campo1.select();			
        return false;
    }
    return true;
} 

function cnpjValido(campo1, campo2, campo3, campo4, campo5) {
    var a = new Array();
    var b = new Number;
    var c = [6,5,4,3,2,9,8,7,6,5,4,3,2];
	//var d = String(((campo.value.replace("/","")).replace("-","")).replace(".","").replace(".",""));
	var d = String(campo1.value + campo2.value + campo3.value + campo4.value + campo5.value);
    for (i=0; i<12; i++){
        a[i] = d.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 ((d.charAt(12) != a[12]) || (d.charAt(13) != a[13])){
		alert('Preencha um CNPJ válido');
		campo1.select();		
        return false;		
    }
    return true;
} 

var verifiqueTAB = true;
function avancaTAB(f, campo, maximo){
	if (campo.value.length == maximo && (verifiqueTAB) ){
		for (i = 0 ; i < f.elements.length ; i++){	
			if (f.elements[i].name == campo.name){	
				f.elements[(i+1)].select();
				verifiqueTAB=false;
				break;
			}
		}
	}
}
function paraTAB(f,i){
	verifiqueTAB = false;	
	if (f.cpfoucnpj.options.selectedIndex == 1){
		if (i == 1)
			f.cpf1.focus();
	} else {
		if (i == 2)
			f.cnpj1.focus();
	}
} 

function checaTAB(){
	verifiqueTAB = true;	
} 

function openAjax() {
var ajax;
try{
    ajax = new XMLHttpRequest(); // Firefox, Safari, dentre outros.
}catch(ee){
    try{
        ajax = new ActiveXObject("Msxml2.XMLHTTP"); //IE da MS
    }catch(e){
        try{
            ajax = new ActiveXObject("Microsoft.XMLHTTP"); // IE da MS
        }catch(E){
            ajax = false;
        }
    }
}
return ajax;
}

//funcao que previne enviar um formulario com um email invalido
function emailInvalido(campo){
	var reEmail = /^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/;
	if(!reEmail.test(campo.value)) {
		alert('Por favor preencha seu e-mail corretamente.');
		campo.select();
		return true;
	}
	return false;
}

function validaNewsletter(f){
	if (!campoInvalido(f.email_newsletter) && !emailInvalido(f.email_newsletter)){		
		var ajax = openAjax();
		ajax.open("GET", "insertNewsletter.php?email="+f.email_newsletter.value, true);
		ajax.onreadystatechange=function() {
			if (ajax.readyState==4){
				if (ajax.status == 200) {
					var resultado = ajax.responseText;
					resultado = resultado.replace(/\+/g," ");
					resultado = unescape(resultado);						
					alert(resultado);
				} else {
					alert("Erro. Tente novamente mais tarde.");
				}
			}
		}
		ajax.send(null);			
	}	
}	

function cnpjRepetido(campo1, campo2, campo3, campo4, campo5, id_cliente){
	var conteudo = document.getElementById('avisoRepetido');
	var ajax = openAjax();
	ajax.open("GET", "ajax_cnpj.php?campo1="+campo1.value+"&campo2="+campo2+"&campo3="+campo3+"&campo4="+campo4+"&campo5="+campo5+"&id_cliente="+id_cliente, true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4){
			if (ajax.status == 200) {
				var resultado = ajax.responseText;
				resultado = resultado.replace(/\+/g," ");
				resultado = unescape(resultado);
				conteudo.innerHTML = resultado;
			}
		}
	}
	ajax.send(null);
}

function cpfRepetido(campo1, campo2, campo3, campo4, id_cliente){
	var conteudo = document.getElementById('avisoRepetido');
	var ajax = openAjax();
	ajax.open("GET", "ajax_cpf.php?campo1="+campo1.value+"&campo2="+campo2+"&campo3="+campo3+"&campo4="+campo4+"&id_cliente="+id_cliente, true);
	ajax.onreadystatechange=function() {
		if (ajax.readyState==4){
			if (ajax.status == 200) {
				var resultado = ajax.responseText;
				resultado = resultado.replace(/\+/g," ");
				resultado = unescape(resultado);
				conteudo.innerHTML = resultado;
			}
		}
	}
	ajax.send(null);
}

function limpar(campo, padrao, proc){
	//proc = 1: onfocus; proc = 2: onblur
	if (campo.value == padrao && proc == 1)
		campo.value = "";
	if (campo.value == "" && proc == 2)
		campo.value = padrao;
}
function campoIgualAPadrao(campo, padrao){
	if (campo.value == padrao){
		alert('Preencha o campo \'pesquisa\' corretamente!');
		campo.focus();
		campo.value = padrao;
		campo.select();
		return true;	
	}
	return false;
}
function validaBusca(f, padrao){
	if (campoInvalido(f.busca, true) || campoIgualAPadrao(f.busca,padrao))
		return false;
	return true;
}
function validaForm(){
	f = document.commentform;
	if (campoInvalido(f.nome) || campoInvalido(f.email) || campoInvalido(f.comentario) )
		return false;
	return true;
}
function campoInvalido(campo){
	if (campo.value == ''){
		alert('O campo '+campo.name+' deve ser preenchido!');
		campo.focus();
		return true;
	} else if (campo.value.indexOf("\\") != -1 || campo.value.indexOf("'") != -1 || campo.value.indexOf('"') != -1){
		alert('O campo '+campo.name+' contém caractere(s) inválido(s)!');
		campo.select();
		return true;	
	}
	return false;
}
function validaForm2(){
	f = document.enviaform;
	if (campoInvalido(f.nome) || campoInvalido(f.email) || campoInvalido(f.nome_amigo) || campoInvalido(f.email_amigo))
		return false;
	return true;
}
function max(txarea) { 
	total = total_caracteres_comentario; 
	tam = txarea.value.length; 
	str=0; 
	str=str+tam;  
	document.getElementById('Restante').innerHTML = total - str; 
	if (tam > total){ 
		aux = txarea.value; 
		txarea.value = aux.substring(0,total); 
		document.getElementById('Restante').innerHTML = 0;
	} 
}
function imprimir(id_artigo){
	window.open("imprimir.php?id="+id_artigo,"_impressao","width=730,height=500,menubar=1,scrollbars=1");
}
function tamFonte(id, maismenos){
	var conteudo = document.getElementById(id);
	if (conteudo.style.fontSize == "")
		conteudo.style.fontSize = "11px";
	if (conteudo.style.lineHeight == "")
		conteudo.style.lineHeight = "13px";

	tamanho = conteudo.style.fontSize.substring(0,conteudo.style.fontSize.length-2);
	font = parseInt(tamanho);
	
	altura = conteudo.style.lineHeight.substring(0,conteudo.style.lineHeight.length-2);
	line = parseInt(altura);

	if (maismenos == 1) {
		if (font != 9) {
			conteudo.style.fontSize = (font - 2) + "px";
			conteudo.style.lineHeight = (line - 2) + "px";
		}
	} else {
		if (font != 17) {
			conteudo.style.fontSize = (font + 2) + "px";
			conteudo.style.lineHeight = (line + 2) + "px";
		}
	}
}

function validaFormServ(doc){
	var msg= "";
	var aviso= "";
	var retorno= true;
	if(doc.nome.value== ""){
		msg+= "\n- Nome";
		retorno= false;
	}
	if(doc.nascimento.value== "" || doc.nascimento.value== "dd/mm/aaaa"){
		msg+= "\n- Nascimento";
		retorno= false;
	}
	if(!validaData(doc.nascimento.value)){
		aviso+= "\n- Data de Nascimento Inválida";
		retorno= false;
	}
	if(doc.rg.value== ""){
		msg+= "\n- Identidade";
		retorno= false;
	}
	if(doc.email.value== ""){
		msg+= "\n- E-Mail";
		retorno= false;
	}
	if(doc.cliente.value== ""){
		msg+= "\n- Cliente";
		retorno= false;
	}
	if(doc.rg.servico== ""){
		msg+= "\n- Serviço";
		retorno= false;
	}
	if(doc.calculo.value== ""){
		msg+= "\n- Número de Cálculo";
		retorno= false;
	}
	if(retorno== true){
		return true;
	} else {
		alert("Campos Obrigatórios:" + msg + "\n------------------" + aviso);
		return false;
	}
}

function validaData(data){
	var dia= data.substr(0, 2);
	var mes= data.substr(3, 2);
	var ano= data.substr(6, 4);
	
	if(isNaN(dia) || isNaN(mes) || isNaN(ano)){
		return false;
	}
	dia= parseInt(dia);
	mes= parseInt(mes);
	if(dia > 31 || mes > 12){
		return false;
	}
	switch (mes){
		case '04':
		case '06':
		case '09':
		case '11': if(dia== '31') { return false; } break;
		case '02': if(dia== '31' || dia== '30') { return false; } break;
	}
	return true;
}

function validaForm3(doc) {
	if(doc.autorizacao.checked== true) {
		return true;
	}
	alert("Marque a opção 'Aprovado para impressão'");
	return false;
}

function validaForm5(){
	f = document.formulario;
	if (f.nome.value == ''){
		alert('Você deve preencher o campo nome!');
		f.nome.focus();
		return false;
	}
	else if (f.nome.value.indexOf("\\") != -1 || f.nome.value.indexOf("'") != -1 || f.nome.value.indexOf('"') != -1 || f.nome.value.indexOf(";") != -1){
		alert('Você digitou um caracter inválido! Tente novamente');
		f.nome.select();
		return false;	
	}		
	else if (f.email.value == ''){
		alert('Você deve preencher o campo email!');
		f.email.focus();
		return false;
	}
	else if (f.email.value.indexOf("\\") != -1 || f.email.value.indexOf("'") != -1 || f.email.value.indexOf('"') != -1 || f.email.value.indexOf(";") != -1){
		alert('Você digitou um caracter inválido! Tente novamente');
		f.email.select();
		return false;	
	}
	else if (f.email.value.indexOf("@") != f.email.value.lastIndexOf("@")){
		alert('Não é permitido digitar mais de um e-mail! Tente novamente');
		f.email.select();
		return false;	
	}	
	if(f.email.value != ''){
		parte1 = f.email.value.indexOf("@");
		parte2 = f.email.value.indexOf(".");
		parte3 = f.email.value.length;
		if (!(parte1 >= 3 && parte2 >= 6 && parte3 >= 9)){
			alert('É necessário utilizar um e-mail válido');
			f.email.focus();
			f.email.select();		
			return false;
		}
	}
	if (f.numero.value.indexOf("\\") != -1 || f.numero.value.indexOf("'") != -1 || f.numero.value.indexOf('"') != -1 || f.numero.value.indexOf(";") != -1){
		alert('Você digitou um caracter inválido! Tente novamente');
		f.numero.select();
		return false;	
	}	
	else if (f.numero2.value.indexOf("\\") != -1 || f.numero2.value.indexOf("'") != -1 || f.numero2.value.indexOf('"') != -1 || f.numero2.value.indexOf(";") != -1){
		alert('Você digitou um caracter inválido! Tente novamente');
		f.numero2.select();
		return false;	
	}					
	else if (f.departamento.selectedIndex == 0){
		alert('Você deve escolher o departamento!');
		f.departamento.focus();
		return false;
	}
	else if (f.mensagem.value == ''){
		alert('Você deve preencher o campo mensagem!');
		f.mensagem.focus();
		return false;
	}	
	else if (f.mensagem.value.indexOf("\\") != -1 || f.mensagem.value.indexOf("'") != -1 || f.mensagem.value.indexOf('"') != -1 || f.mensagem.value.indexOf(";") != -1){
		alert('Você digitou um caracter inválido! Tente novamente');
		f.mensagem.select();
		return false;	
	}			
	return true;
}

function validaLogin(f){
	if (campoInvalido(f.login,true) || campoInvalido(f.senha,true))
		return false;
	return true;
}

function viewImagem(imagem){
	document.getElementById('foto'+imagem).className = "visivel";
}
function hideImagem(imagem){
	document.getElementById('foto'+imagem).className = "";
}