// JavaScript Document
function vfbusca(){
	var topSearchBox = document.getElementById('topSearchBox');
	var msg = '';
	if(topSearchBox == '' ){
		msg = 'Por favor digite uma palavra \r\n que você gostaria encontrar no site';
		return false;
	}
	return true;	
}
function login_in(){
	document.getElementById('login').value = '';
}
function login_out(){
	var login = document.getElementById('login').value;
	if(login == '' ){document.getElementById('login').value = 'login';}
}
function senha_in(){
	document.getElementById('senha').value = '';
	document.getElementById('senha').type = 'password';
}
function senha_out(){
	var senha = document.getElementById('senha').value;
	if(senha == '' ){
		document.getElementById('senha').value = 'senha';
		document.getElementById('senha').type = 'text';
	}
}
function vflogin(){
	var login = document.getElementById('log');
	var pass = document.getElementById('pass');
	var msg = '';
	if(login == '' ){
		msg = 'O campo Login precisa ser preenchido';
		return false;
	}
	if(pass == '' ){
		msg = 'O campo Senha precisa ser preenchido';
		return false;
	}
	return true;	
}
function validaApplication() {
	var frm = document.dadosGaleria;
	var pais = frm.pais_selec.options[frm.pais_selec.selectedIndex].text
	
	//Nome da Pessoa Jurídica
	if(!temNPalavras(frm.pesj2_nom.value, 2)) {
		alert("Por favor, preencha corretamente a RAZÃO SOCIAL da Galeria");
		focaCampo(frm.pesj2_nom);
		return false;
	}
	if(frm.pesj2_nom_fantasia.value.length<1) {
		alert("Por favor, preencha o NOME FANTASIA");
		focaCampo(frm.pesj2_nom_fantasia);
		return false;
	}
	if(pais == 'Brasil') {
		var cnpj = frm.pesj2_cnpj.value.replace(/[.\/\-]*/g,"");
		if(!valida_cnpj(cnpj)) {
			alert("O CNPJ digitado é inválido.\n\nPor favor, preencha corretamente o CNPJ da Galeria");
			focaCampo(frm.pesj2_cnpj);
			return false;
		}
		//Endereço
		if(!temNPalavras(frm.ende2_end1.value, 2)) {
			alert("Por favor, preencha corretamente o ENDEREÇO da Galeria");
			focaCampo(frm.ende2_end1);
			return false;
		}
		if(frm.ende2_cep.value.length<5) {
			alert("Por favor, preencha corretamente o CEP DO ENDEREÇO da Galeria");
			focaCampo(frm.ende2_cep);
			return false;
		}
	} else {
		frm.pesj2_cnpj.value = "";
	}
	if (typeof frm.ende2_cida != 'undefined'){
		if(frm.ende2_cida.value.length<2) {
			if(pais == 'Brasil')
				msg = "Por favor, preencha corretamente a CIDADE DO ENDEREÇO da Galeria";
			else
				msg = "Por favor, preencha corretamente a CIDADE onde se localiza a Galeria";
			
			alert(msg);
			focaCampo(frm.ende2_cida);
			return false;
		}
	}
	if(pais == 'Brasil') {
	} else {
		if (typeof frm.ende2_esta != 'undefined'){
			if(frm.ende2_esta.value.length<2) {
				msg = "Por favor, preencha corretamente o ESTADO ou PROVÍNCIA onde se localiza a Galeria";
				alert(msg);
				focaCampo(frm.ende2_esta);
				return false;
			}
			frm.esta2_nom.value="";
		}
	}
	
	if (typeof frm.pais2_cod != 'undefined'){
		if(frm.pais2_cod.value=="") {
			alert("Por favor, selecione o PAÍS onde se encontra a Galeria");
			focaCampo(frm.pais2_cod);
			return false;
		}
	}
	if(pais == 'Brasil' && (frm.tepe2_ddd_fone.value=="DDD" || frm.tepe2_ddd_fone.value.length<2)) {
		alert("Por favor, preencha corretamente o DDD do TELEFONE DE CONTATO da Galeria");
		focaCampo(frm.tepe2_ddd_fone);
		return false;
	}
	if(frm.tepe2_num_fone.value.length<6) {
		alert("Por favor, preencha corretamente o TELEFONE DE CONTATO da Galeria");
		focaCampo(frm.tepe2_num_fone);
		return false;
	}
	if(!checaEmail(frm.pesj2_email.value)) {
		alert("Por favor, preencha corretamente o E-MAIL DE CONTATO da Galeria");
		focaCampo(frm.pesj2_email);
		return false;
	}
	if(!validaCampoDin("ano_inaug", "#.value.length>3", "Por favor, preencha o ANO DE INAUGURAÇÃO corretamente")) return false;
	if(!validaCampoDin("nexpo_anuais", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES ANUAIS")) return false;
	if(!validaCampoDin("nexpo_indiv", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES INDIVIDUAIS")) return false;
	if(!validaCampoDin("nexpo_colet", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES COLETIVAS")) return false;
	
	//if(!validaDadosGal()) return false;
	if(document.getElementById('bt_appl').value == 'estou ciente e aceito'){
		alert("A declaração referente a application precisa ser aceito.");
		return false;
	}
	if(document.getElementById('bt_seguro').value == 'estou ciente e aceito'){
		alert("A declaração referente ao seguro precisa ser aceito.");
		return false;
	}
	if(document.getElementById('bt_estranho').value == 'estou ciente e aceito'){
		alert("A declaração referente as obras estrangeiras precisa ser aceito.");
		return false;
	}
	// if(!validaCampoDin("sobregal", "#.value.length>3", "Por favor, preencha o TEXTO SOBRE A GALERIA")) return false;
	if(!validaCampoDin("artistas_acervo", "#.value.length>3", "Por favor, preencha os ARTISTAS NO ACERVO DA GALERIA")) return false;
	if($("INPUT.tick:checked").length!=1) {
		alert("Por favor, selecione a &Aacute;REA DESEJADA para seu stand.");
		return false;
	}
	frm.submit();
	return true;
} 

function inLabelTxt(obj, txt) {
	if(obj.value=="") {
		$(obj).css("color","#aaaaaa");
		obj.value=txt;
	}
}

/*
$(document).ready(function() {
	if($("#pais_selec").length>0) {
		$(".foneddid").focus( function() {
			if(this.value.substr(0,2)=="DD") this.value="";
			$(this).css("color","black");
		});

		$("#fone_gal_ddi").blur( function() { inLabelTxt(this, "DDI") }).blur();
		$("#fone_gal_ddd").blur( function() { inLabelTxt(this, "DDD") }).blur();
		$("#fax_gal_ddi").blur( function() { inLabelTxt(this, "DDI") }).blur();
		$("#fax_gal_ddd").blur( function() { inLabelTxt(this, "DDD") }).blur();
		
		mostraCamposBR();
	}
});
*/
function mostraCamposBR() {
	if(isPaisBR()) {
		document.getElementById('select_state').style.display = "block";
		document.getElementById('field_state').style.display = "none";
		//document.getElementById('select_state').style.visibility = "hidden";
		//document.getElementById('field_state').style.visibility = "visible";
		//$(".trDadosBr").show();
		//$(".trDadosEx").hide();
		//$("#nmProv").text("Estado");
		//$("#nmCep").html('CEP&nbsp;&nbsp;');
	} else {
		document.getElementById('select_state').style.display = "none";
		document.getElementById('field_state').style.display = "block";
		//document.getElementById('select_state').style.visibility = "visible";
		//document.getElementById('field_state').style.visibility = "hidden";
		//$(".trDadosBr").hide();
		//$(".trDadosEx").show();
		//$("#nmProv").text("Estado / State");
		//$("#nmCep").html("Código Postal /<br>Zip code&nbsp;&nbsp;");
	}
}

function isPaisBR() {
	return (document.dadosGaleria.pais2_cod.value=="25");
}

function validaDadosCatalogoInfo() {
	if(!validaCampoDin("sobregal", "NAO_VAZIO", "Por favor, preencha o texto descrevendo SOBRE A GALERIA")) return false;
	if(!validaCampoDin("sobregal", "#.value.length<=630", "O comprimento máximo do campo SOBRE A GALERIA não deve exceder 630 caracteres!\n(Está atualmente com " + getCampoDin("sobregal").value.length + ")")) return false;
	if(!validaCampoDin("sobregal_en", "NAO_VAZIO", "Por favor, preencha o texto descrevendo SOBRE A GALERIA em Inglês")) return false;
	if(!validaCampoDin("sobregal_en", "#.value.length<=630", "O comprimento máximo do campo SOBRE A GALERIA em Inglês não deve exceder 630 caracteres!\n(Está atualmente com " + getCampoDin("sobregal_en").value.length + ")")) return false;
	
	return true;
}

function validaDadosGal() {
	var frm = document.dadosGaleria;
	
	//Nome da Pessoa Jurídica
	if(!temNPalavras(frm.pesj2_nom.value, 2)) {
		alert("Por favor, preencha corretamente a RAZÃO SOCIAL da Galeria");
		focaCampo(frm.pesj2_nom);
		return false;
	}
	
	if(frm.pesj2_nom_fantasia.value.length<1) {
		alert("Por favor, preencha o NOME FANTASIA");
		focaCampo(frm.pesj2_nom_fantasia);
		return false;
	}
	
	if(isPaisBR()) {
		var cnpj = frm.pesj2_cnpj.value.replace(/[.\/\-]*/g,"");
		if(!valida_cnpj(cnpj)) {
			alert("O CNPJ digitado é inválido.\n\nPor favor, preencha corretamente o CNPJ da Galeria");
			focaCampo(frm.pesj2_cnpj);
			return false;
		}
		
		//Endereço
		if(!temNPalavras(frm.ende2_end1.value, 2)) {
			alert("Por favor, preencha corretamente o ENDEREÇO da Galeria");
			focaCampo(frm.ende2_end1);
			return false;
		}
		if(frm.ende2_cep.value.length<5) {
			alert("Por favor, preencha corretamente o CEP DO ENDEREÇO da Galeria");
			focaCampo(frm.ende2_cep);
			return false;
		}
	} else {
		frm.pesj2_cnpj.value = "";
	}
	
	if(frm.ende2_cida.value.length<2) {
		if(isPaisBR())
			msg = "Por favor, preencha corretamente a CIDADE DO ENDEREÇO da Galeria";
		else
			msg = "Por favor, preencha corretamente a CIDADE onde se localiza a Galeria";
		
		alert(msg);
		focaCampo(frm.ende2_cida);
		return false;
	}
	
	if(isPaisBR()) {
		if(frm.esta2_nom.value=="") {
			msg = "Por favor, selecione o ESTADO DO ENDEREÇO da Galeria";
			alert(msg);
			focaCampo(frm.esta2_nom);
			return false;
		}
		
		frm.ende2_esta.value = "";
	} else {
		if(frm.ende2_esta.value.length<2) {
			msg = "Por favor, preencha corretamente o ESTADO ou PROVÍNCIA onde se localiza a Galeria";
			alert(msg);
			focaCampo(frm.ende2_esta);
			return false;
		}
		
		frm.esta2_nom.value="";
	}
	
	if(frm.pais2_cod.value=="") {
		alert("Por favor, selecione o PAÍS onde se encontra a Galeria");
		focaCampo(frm.pais2_cod);
		return false;
	}
	if(isPaisBR() && (frm.fone_galeria_ddd.value=="DDD" || frm.fone_galeria_ddd.value.length<2)) {
		alert("Por favor, preencha corretamente o DDD do TELEFONE DE CONTATO da Galeria");
		focaCampo(frm.fone_galeria_ddd);
		return false;
	}
	if(frm.fone_galeria.value.length<6) {
		alert("Por favor, preencha corretamente o TELEFONE DE CONTATO da Galeria");
		focaCampo(frm.fone_galeria);
		return false;
	}
	if(!checaEmail(frm.email_galeria.value)) {
		alert("Por favor, preencha corretamente o E-MAIL DE CONTATO da Galeria");
		focaCampo(frm.email_galeria);
		return false;
	}
	if(frm.gale2_contato.value.length<3) {
		alert("Por favor, preencha corretamente o NOME DO(S) CONTATO(S) da Galeria");
		focaCampo(frm.gale2_contato);
		return false;
	}
	if(frm.gale2_diret.value.length<3) {
		alert("Por favor, preencha corretamente o NOME DO(S) DIRETOR(ES) da Galeria");
		focaCampo(frm.gale2_diret);
		return false;
	}
	
	if(!validaCampoDin("ano_inaug", "#.value.length>3", "Por favor, preencha o ANO DE INAUGURAÇÃO corretamente")) return false;
	if(!validaCampoDin("nexpo_anuais", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES ANUAIS")) return false;
	if(!validaCampoDin("nexpo_indiv", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES INDIVIDUAIS")) return false;
	if(!validaCampoDin("nexpo_colet", "NAO_VAZIO", "Por favor, preencha o NÚMERO DE EXPOSIÇÕES COLETIVAS")) return false;
	
	return true;
}

function getCampoDin(campo) {
	var frm = document.dadosGaleria;
	return frm.elements['dynchar_' + campo];
}

function validaCampoDin(campo, expr, msgErro) {
	var cFrm = getCampoDin(campo);
	
	if(!cFrm) return false;
	
	switch(expr) {
	case "NAO_VAZIO":
		if(campo.substr(-2)=="[]") {
			temAlgo = false;
			temTxt = false;
			classCampo = campo.substr(0, campo.length-2);
			$("." + classCampo).each(function() {
				if(this.type=="checkbox") {
					if(this.checked) {
						temAlgo = true;
						return false;
					}
				} else {
					temTxt = true;
					if(this.value!="") {
						temAlgo = true;
						return false;
					}
				}
			});
			
			if(!temAlgo) {
				alert(msgErro);
				focaCampo(cFrm);
				return false;
			}
		} else {
			if(cFrm.value=="") {
				alert(msgErro);
				focaCampo(cFrm);
				return false;
			}
		}
		break;
	default:
		if(campo.substr(-2)!="[]") {
			expr = expr.replace("#", "cFrm");
			if(!eval(expr)) {
				alert(msgErro);
				focaCampo(cFrm);
				return false;
			}
		}
	}
	
	return true;
}


function checkIfIsNum(ev) {
	if(ev.keyCode) tecl=ev.keyCode; else tecl=ev.which;
	if(tecl) {
		if(tecl!=9 &&  //Tab
			tecl!=8 &&  //Backspace
		   tecl!=35 && //End
			tecl!=36 && //Home
			tecl!=37 && //Seta esquerda
			tecl!=39 && //Seta direita
			tecl!=46 && //Delete
			(tecl<48 || tecl>57) //qq outra coisa além de Números de 0 a 9
		  ) return false;
	}
	return true;
}

function checaEmail(campo){
	var tam = campo.length;			
	var ixArroba = campo.indexOf("@");
	var rxArroba = campo.lastIndexOf("@");
	
	if(campo.indexOf(" ") == -1)
		if((ixArroba == rxArroba) && (ixArroba > 0) && (ixArroba != (tam-1)))
			if(campo.indexOf(".", ixArroba +1) > 1 && campo.lastIndexOf(".") < (tam-1))
				return true;
    return false;
}

function temNPalavras(txt,numPal) {
	var tp_cnt = 0;
	var tp_txt = sanizaString(txt);
	
	if(tp_txt.length>=1) tp_cnt = 1;
	
	tp_pos = tp_txt.indexOf(" ");
	while (tp_pos != -1) {
		tp_cnt++;
		tp_pos = tp_txt.indexOf(" ",tp_pos+1);
	}
	if(tp_cnt<numPal) return false; else return true;
}

function sanizaString(txt) {
	var tmpStr = txt;
	while (tmpStr.indexOf("  ")>-1) tmpStr=tmpStr.replace(/  /g," ");
	while (tmpStr.charAt(0)==" ") tmpStr=tmpStr.slice(1);
	while (tmpStr.charAt(tmpStr.length-1)==" ") tmpStr=tmpStr.slice(0,-1);
	return tmpStr;
}

function focaCampo(campo) {
	campo.focus();
	if(campo.type=="text" || campo.type=="password") campo.select();
}

//VALIDA CNPJ
function valida_cnpj(cnpj) {
	var numeros, digitos, soma, i, resultado, pos, tamanho, digitos_iguais;
	digitos_iguais = 1;
	if (cnpj.length < 13 || cnpj.length > 14) 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;
}
