//Variaveis globais
//CARACTERES DIVERSOS
var letrasmai = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var letrasmin = "abcdefghijklmnopqrstuvwxyz";
var numeros   = "0123456789";
var emails    = letrasmin+"_."+numeros;
var telefones = "()-x "+numeros;
//CARACTERES UNICOS
var emailsc   = "@";
var moeda     = ",";
//MASCARAS
var datas     = "  /  /    ";
var horas     = "  :  ";

//Tipo do navegador
var agt = navigator.userAgent.toLowerCase();
var is_ie	    = ((agt.indexOf("msie") != -1) && (agt.indexOf("opera") == -1));
var is_opera  = (agt.indexOf("opera") != -1);
var is_mac    = (agt.indexOf("mac") != -1);
var is_mac_ie = (is_ie && is_mac);
var is_win_ie = (is_ie && !is_mac);
var is_gecko  = (navigator.product == "Gecko");


preLoadImg = new Image();
preLoadImg.src = "/Imagens/loading.gif";

function get(elemento){
	return document.getElementById(elemento);
}


//function 
//showAmigo() {
// 	abrePop("/cadastro.asp?Imovel=6",375,330);}
//Abre uma janela pop-up no centro da tela
function abrePop(pPagina,pLargura,pAltura,pScroll,pResize,autoClose) {
  var name = pPagina+"?";
  name = name.substr(0,name.indexOf("?"));
  name = name.substr(name.lastIndexOf("/")+1);
  if (name.lastIndexOf(".") > -1) name = name.substr(0,name.lastIndexOf("."));
  if (!name) name = "popup";
  var posX = (window.screen.width - pLargura - 16) / 2;
  var posY = (window.screen.height - pAltura) / 2;
  var win = window.open(pPagina,name,"width=" + pLargura + ",height=" + pAltura + ",top=" + posY + ",left=" + posX + ",scrollbars=" + pScroll + (pResize ? ",resizable=yes" : ""));
  if(win){
    win.focus();
    if (autoClose){
      if (is_ie) {
        attachEvent("onunload", function(){closePop(win)});
      } else {
        addEventListener("unload", function(){closePop(win)}, true);
      }
    }
  }
  return win;
}

//Testa se a popup existe e fecha a mesma
function closePop(obj){
  if(!isNull(obj))
    if(!obj.closed)
      obj.close();
  return true;
}

//Executa o metodo submit do formulario
function doSubmit(tform){
  if (tform && !tform.action) tform = document.getElementById(tform);
  if (tform) {
    if (!tform.onsubmit || tform.onsubmit()){
      tform.submit();
      return true;
    }
    return false;
  }
  alert("Formulario nao encontrado!");
  return false;
}

//Redireciona a pagina para a url informada
function redirect(url){
  document.location.href=url;
}

//Verifica se a tecla pressionada pode ser incluida no campo
function testaMascara(obj,str,strone,mask,mykey){
  //SE O CAMPO EH READONLY CAI FORA
  if (obj.readOnly) return false;

  if (document.selection){
      document.selection.createRange().text = "";
  }else if (obj.selectionStart || obj.selectionStart == "0"){
    var selectionStart = obj.selectionStart;
    var selectionEnd = obj.selectionEnd;
    obj.value = obj.value.substring(0, selectionStart) + obj.value.substring(selectionEnd);
    obj.setSelectionRange(selectionStart, selectionStart);
  }

  //VERIFICA TECLA EH IGUAL A MASCARA OU VALIDA EM "str" E "strone"
  if (mykey == mask.charAt(obj.value.length) && mykey != " " && mykey != "%") return true;
  if ((str+strone)!="" && (str+strone).indexOf(mykey) ==-1) return false;
  if (strone!="" && obj.value.indexOf(mykey)!=-1 && strone.indexOf(mykey)!=-1) return false;

  //VERIFICA MASCARA
  if(mask.charAt(0)=="%"){
    var mylength=0;
    var i=mask.length;
    while(i>0 && mylength==0){
      i--;
      if(obj.value.lastIndexOf(mask.charAt(i))!=-1) mylength=i;
    }
    obj.value=obj.value.substr(0,obj.value.length-mylength)+mykey+mask.substr(1,mask.length);
    return false;
  }

  if(mask.charAt(mask.length-1)=="%"){
    if(obj.value=="") obj.value=mask.substr(0,mask.indexOf("%"));
    return true;
  }

  var tam=obj.value.length;
  while (mask.charAt(tam) && mask.charAt(tam)!=" " && tam<=mask.length){
    if(mask.charAt(tam)!=" ") obj.value+=mask.charAt(tam);
    tam++;
  }
  if(mask.substr(tam+1,mask.length-tam).indexOf(" ")==-1 && tam<mask.length && mask.length-tam!=1){
    obj.value+=mykey+mask.substr(tam+1,mask.length-tam);
    return false;
  }

  if(obj.value.length<mask.length || mask.length==0) return true;
  if(obj.value.length>mask.length) obj.value=obj.value.substr(0,mask.length);
  return false;
}

//Verifica a mascara e retorna se a tecla pressionada pode ser incluida no campo
// Ex: maskedit(event,this,numeros,'','')
function maskedit(eve,obj,str,strone,mask) {
  var codesIE = new Array(8,9,13);
  var codesMZ = new Array(8,9,13,33,35,36,37,38,39,40,46,112,113,114,115,116,117,118,119,120,121,122,123);
  if (!eve) eve = window.event;
  var code;
  var li;
  if (is_gecko){
    code = eve.keyCode;
    for (li=0; li<codesMZ.length; li++) if(code == codesMZ[li]) return true;
    code = eve.charCode;
  }else{
    code = eve.keyCode ? eve.keyCode : eve.which ? eve.which : void 0;
    for (li=0; li<codesIE.length; li++) if(code == codesIE[li]) return true;
  }
  return testaMascara(obj,str,strone,mask,String.fromCharCode(code));
}

//Verifica se o valor eh valido
function isNull(str){ return (str+"" == "null"); }
function isUndefined(str){ return (str+"" == "undefined"); }
function isEmpty(str){
  if(!str) return true;
  if (str.value) str = str.value;
  return (str+"" == "") || (str+"" == ".") || (str+"" == " ");
/*
  var invalid = " .\n\t";
  for(var li=0;li<str.length;li++) {
    if(invalid.indexOf(str.charAt(li)) != -1) return false;
  }
  return true;
*/
}

//Retorna se o campo TEXT foi preenchido
function okText(obj,desc,value){
  if(!obj) return true;
  if (isNull(obj.value) || isUndefined(obj.value) || ""+obj.value == "" || obj.value == value) {
    alert("Preencha o campo "+desc+"!");
    obj.focus();
    return false;
  }
  if (isEmpty(obj.value)) {
    alert("Preencha corretamente o campo "+desc+"!");
    obj.focus();
    return false;
  }
  return true;
}

//Verifica se o numero de caracteres nao excede o limite
function okLeng(obj,desc,tam){
  if(!obj) return true;
  if (obj.value.length>tam) {
    alert("O campo "+desc+" deve ter no máximo "+tam+" digitos, mas possui "+obj.value.length+" dígitos!");
    obj.focus();
    return false;
  } else return true;
}
function okEqualLeng(obj,desc,tam){
  if(!obj) return true;
  if (obj.value.length != tam) {
    alert("O campo "+desc+" deve ter "+tam+" digitos!");
    obj.focus();
    return false;
  } else return true;
}
function okLessLeng(obj,desc,tam){
  if(!obj) return true;
  if (obj.value.length < tam) {
    alert("O campo "+desc+" deve ter no minimo "+tam+" digitos, mas possui apenas "+obj.value.length+" dígitos!");
    obj.focus();
    return false;
  } else return true;
}

//Retorna se o campo SELECT foi selecionado
function okList(obj,desc,value){
  if(!obj) return true;
  if (isEmpty(obj.value) || obj.value == value) {
    alert("Selecione o campo "+desc+"!");
    obj.focus();
    return false;
  } else return true;
}

//Retorna se o campo RADIO foi marcado
function okRadio(obj,desc){
  if(!obj) return true;
  if (!obj.length) {
    if(obj.checked) return true;
    alert("Selecione o campo "+desc+"!");
    obj.focus();
    return false;
  }

  for(var li=0;li<obj.length;li++){
    if(obj[li].checked) {
      if (obj[li].value) return obj[li].value;
      else return true;
    }
  }
  alert("Selecione o campo "+desc+"!");
  obj[0].focus();
  return false;
}

//Retorna se o campo DATA foi preenchido corretamente
function okDate(obj,desc) {
  if(!obj) return true;
  if (obj.value == "") return true;
  
  var meses = new Array(31,29,31,30,31,30,31,31,30,31,30,31);

  if (obj.value.length==5) obj.value = obj.value + "/2004";
  if (obj.value.length<10 && obj.value.substr(1,1)=="/") obj.value = "0"+obj.value;
  if (obj.value.length<10 && obj.value.substr(4,1)=="/") obj.value = obj.value.substr(0,3)+"0"+obj.value.substr(3);
  if (obj.value.length==8 && obj.value.substr(2,1)=="/" && obj.value.substr(5,1)=="/") obj.value = obj.value.substr(0,6)+"20"+obj.value.substr(6);

  if (obj.value.substr(2,1)!="/" || obj.value.substr(5,1)!="/" || isNaN(obj.value.substr(0,2)) || isNaN(obj.value.substr(3,2)) || isNaN(obj.value.substr(6,4))){
    alert("Preencha corretamente o campo "+desc+"!");
    obj.focus();
    return false;
  }
  
  if (0+obj.value.substr(6,4)<1900 || 0+obj.value.substr(6,4)>2010){
    alert("Ano invalido no campo "+desc+"!");
    obj.focus();
    return false;
  }
  
  if (0+obj.value.substr(3,2)<1 || 0+obj.value.substr(3,2)>12){
    alert("Mes invalido no campo "+desc+"!");
    obj.focus();
    return false;
  }
  
  if (0+obj.value.substr(0,2)<1 || 0+obj.value.substr(0,2)>31 || 0+obj.value.substr(0,2) > meses[obj.value.substr(3,2)-1]){
    alert("Dia invalido para o mes especificado no campo "+desc+"!");
    obj.focus();
    return false;
  }
  
  return true;
}

//Retorna se o campo EMAIL foi preenchido corretamente
function okEmail(obj,desc,value) {
  if(!obj) return true;
  if (!okText(obj,desc,value)) {
    return false;
  } else
  if((obj.value.indexOf("@")<2)||(obj.value.substring(obj.value.indexOf("@")+1,obj.value.length).indexOf(".")<2) ||
     (obj.value.indexOf("@") != obj.value.lastIndexOf("@"))||(obj.value.lastIndexOf(".")>=obj.value.length-2)){
       alert("Preencha corretamente o campo "+desc+"!");
	   obj.value = "";
       obj.focus();
       return false;
  } else return true;
}

//Verifica se o digito de um CPF/CNPJ eh valido
function okCPFCNPJ(obj, desc) {
  if(!obj) return true;
	var s_aux = obj.value;
	sOK = false;
	if (s_aux.length == 11 ) {
		var d1, d2;
		var digito1, digito2, resto;
		var digitoCPF;
		var nDigResult;
		d1 = d2 = 0;
		digito1 = digito2 = resto = 0;
		for (var n_Count = 1; n_Count < s_aux.length -1; n_Count++) {
			digitoCPF = eval(s_aux.charAt(n_Count -1));
			d1 = d1 + ( 11 - n_Count ) * digitoCPF;
			d2 = d2 + ( 12 - n_Count ) * digitoCPF;
		}
		resto = (d1 % 11);
		if (resto < 2) digito1 = 0;
		else digito1 = 11 - resto;
		d2 += 2 * digito1;
		resto = (d2 % 11);
		if (resto < 2) digito2 = 0;
		else digito2 = 11 - resto;
		var nDigVerific = s_aux.substring (s_aux.length-2, s_aux.length);
		nDigResult = (""+digito1) + (""+digito2);
		sOK = nDigVerific == nDigResult;
	} else if (s_aux.length == 14) {
		var soma = 0, dig;
		var cnpj_calc = s_aux.substring(0,12);
		var chr_cnpj = s_aux;
		for(var i = 0; i < 4; i++ ) soma += chr_cnpj.charAt(i) * (6 - (i + 1));
		for(var i = 0; i < 8; i++ ) soma += chr_cnpj.charAt(i+4) * (10 - (i + 1));
		dig = 11 - (soma % 11);
		cnpj_calc += ( dig == 10 || dig == 11 ) ? "0" : ""+dig;
		soma = 0;
		for (var i = 0; i < 5; i++ ) soma += chr_cnpj.charAt(i) * (7 - (i + 1));
		for (var i = 0; i < 8; i++ ) soma += chr_cnpj.charAt(i+5) * (10 - (i + 1));
		dig = 11 - (soma % 11);
		cnpj_calc += ( dig == 10 || dig == 11 ) ? "0" : ""+dig;
		sOK = s_aux == cnpj_calc;
	}
	if (!sOK) {
       alert(desc);
	   obj.value = "";
       obj.focus();
	}
	return sOK;
}

//Verifica se o cartao de credito eh valido
function okCartaoCredito(obj) {
	var cartao = obj.value;
	if (cartao.length > 19) return false;
	var sum = 0; 
	var mul = 1; 
	var l = cartao.length;
	for (var i = 0; i < l; i++) {
		var digit = cartao.substring(l-i-1,l-i);
		var tproduct = parseInt(digit ,10)*mul;
		if (tproduct >= 10) sum += (tproduct % 10) + 1;
		else sum += tproduct;
		if (mul == 1) mul++;
		else mul--;
	}
	if (sum % 10 == 0) return true;
	alert("Cartao de Credito invalido!");
	obj.focus();
}

//Converte a string passada em numero
function toNumber(valor,depois){
  if(!valor) valor = "0,00";
  if(""+depois=="undefined") depois = 2;
  valor = "" + valor;
  try{
    while(valor.indexOf(".")>-1) valor = valor.replace(".","");
    valor = valor.replace(",",".");
    if(valor.indexOf(".")<0) valor += ".0";
    valor = valor.substring(0,valor.indexOf(".")+depois+1);
    if(valor=="") valor = 0.0;
    return eval("1*"+valor);
    //return Math.round(valor*Math.pow(10,depois))/Math.pow(10,depois);
  }catch(e){
    return "isNaN";
  }
}
function toCurr(valor,depois){
  if(!valor) valor = "0,00";
  if(""+depois=="undefined") depois = 2;
  valor = "" + valor;
  try{
    valor = valor.replace(".",",");
    if(valor.indexOf(",")==-1) valor = valor + ",0";

    var aux = valor.substring(valor.lastIndexOf(","),valor.lastIndexOf(",")+depois+1);
    valor = valor.substring(0,valor.lastIndexOf(","));
    while(valor.length>3){
      aux = "." + valor.substring(valor.length-3,valor.length) + aux;
      valor = valor.substring(0,valor.length-3);
    }
    valor = valor + aux;
  }catch(e){
    valor = "0,00";
  }
  if(depois==0) valor = valor.substring(0,valor.indexOf(","));
  else while(valor.indexOf(",")>=valor.length-depois) valor = valor + "0";
  return valor;
}

//Retorna se o campo NUMBER eh valido
function okNumber(obj,desc){
  if(!obj) return true;
  if (isNaN(toNumber(obj.value))) {
    alert("O campo "+desc+" nao contem um numero valido!");
    obj.focus();
    return false;
  } else return true;
}

function disableField(obj,disable) {
  obj.disabled = disable;
  obj.style.backgroundColor = (disable ? "#F5F6FA" : "");
}

function Security(val, tamanho) {
 	
	document.getElementById('mensagem').innerHTML = "";
 	document.getElementById('d_baixa').style.background = '#826834';
 	document.getElementById('d_media').style.background = '#826834';
 	document.getElementById('d_alta').style.background = '#826834';
 
	if( val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[A-Z]/) != -1 && val.search(/[0-9]/) != -1 
		||val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[A-Z]/) != -1 && val.search(/[@!#$%&*+=?|-]/) 
		||val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[@!#$%&*+=?|-]/) != -1 && val.search(/[0-9]/) 
		||val.length >= tamanho  && val.search(/[@!#$%&*+=?|-]/) != -1 && val.search(/[A-Z]/) != -1 && val.search(/[0-9]/) )
		{
				document.getElementById('mensagem').innerHTML = "N&iacute;vel Seguran&ccedil;a: forte";
  			document.getElementById('d_baixa').style.background = 'green';
 				document.getElementById('d_media').style.background = 'green';
 				document.getElementById('d_alta').style.background = 'green';
  		
  	} 
  	else{
  		if( val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[A-Z]/) != -1 
  			||val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[0-9]/) != -1 
  			||val.length >= tamanho && val.search(/[a-z]/) != -1 && val.search(/[@!#$%&*+=?|-]/) != -1
				||val.length >= tamanho && val.search(/[A-Z]/) != -1 && val.search(/[0-9]/) != -1
				||val.length >= tamanho && val.search(/[A-Z]/) != -1 && val.search(/[@!#$%&*+=?|-]/) != -1
				||val.length >= tamanho && val.search(/[0-9]/) != -1 && val.search(/[@!#$%&*+=?|-]/) != -1){

				document.getElementById('mensagem').innerHTML = "N&iacute;vel Seguran&ccedil;a: m&eacute;dia";
 				document.getElementById('d_baixa').style.background = 'yellow';
 				document.getElementById('d_media').style.background = 'yellow';
 				document.getElementById('d_alta').style.background = '#826834';
  				
  			} 
  			else {
  				if(val.length >= tamanho)
  				{
	  				document.getElementById('mensagem').innerHTML = "N&iacute;vel Seguran&ccedil;a: fraca";
  					document.getElementById('d_baixa').style.background = 'red';
 						document.getElementById('d_media').style.background = '#826834';
 						document.getElementById('d_alta').style.background = '#826834';
  					
  				}
  		}
  	}
}

function Trim(s) 
{
   	// Remove leading spaces and carriage returns
   	while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
   	 { s = s.substring(1,s.length); }
     
   	// Remove trailing spaces and carriage returns
 while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
   	 { s = s.substring(0,s.length-1); }
     
   	return s;
}


//Mostra esconde textos
alvoAntes = "";
function atua(alvo,seta,linkAlvo){
	target     = document.getElementById(alvo);
	linkTarget = document.getElementById(linkAlvo);
	setaTarget = document.getElementById(seta);
	if(target.style.display == "none"){
		target.style.display = "block";
		linkTarget.className = "ativo";
		setaTarget.src		 = "imagens/seta_atuacao_select.gif";
	}else{
		target.style.display = "none";
		linkTarget.className = "";
		setaTarget.src		 = "imagens/seta_atuacao.gif";
	}
		
		if(alvoAntes != "" && alvoAntes != alvo){
			targetAntes     = document.getElementById(alvoAntes);
			linkTargetAntes = document.getElementById(linkAntes);
			setaTargetAntes = document.getElementById(setaAntes);
		
			targetAntes.style.display = "none";
			linkTargetAntes.className = "";
			setaTargetAntes.src       = "imagens/seta_atuacao.gif";
		}
		
		alvoAntes = alvo;
		linkAntes = linkAlvo;
		setaAntes = seta;
}

//Mostra esconde textos, muda imagens em Atuação
alvoAntes = "";
function atua2(alvo,seta,linkAlvo){
	target     = document.getElementById(alvo);
	linkTarget = document.getElementById(linkAlvo);
	setaTarget = document.getElementById(seta);
	img        = document.getElementById("atuaImg");
	
	if(target.style.display == "none"){
		target.style.display = "block";
		linkTarget.className = "ativo";
		setaTarget.src		 = "i/seta_atuacao_select.gif";
		img.innerHTML		 = "<img src='i/atuacao/"+alvo+".jpg'/>";
	}else{
		target.style.display = "none";
		linkTarget.className = "";
		setaTarget.src		 = "i/seta_atuacao.gif";
		img.innerHTML		 = "";
	}
		
		if(alvoAntes != "" && alvoAntes != alvo){
			targetAntes     = document.getElementById(alvoAntes);
			linkTargetAntes = document.getElementById(linkAntes);
			setaTargetAntes = document.getElementById(setaAntes);
			img.innerHTML   = "<img src='i/atuacao/"+alvo+".jpg'/>";
			
			targetAntes.style.display = "none";
			linkTargetAntes.className = "";
			setaTargetAntes.src       = "i/seta_atuacao.gif";
		}
		
		alvoAntes = alvo;
		linkAntes = linkAlvo;
		setaAntes = seta;
}


//Mostra Divs Links
alvoLinksAntes = "";
function links(alvo,seta,linkAlvo,img){
	target     = document.getElementById(alvo);
	linkTarget = document.getElementById(linkAlvo);
	setaTarget = document.getElementById(seta);
	
	if(target.style.display == "none"){
		target.style.display = "block";
		linkTarget.className = "ativo";
		setaTarget.src		 = "i/seta_atuacao_select.gif";
	}else{
		target.style.display = "none";
		linkTarget.className = "";
		setaTarget.src		 = "i/seta_atuacao.gif";
	}
	
	if(alvoLinksAntes != "" && alvoLinksAntes != alvo){
		targetLinksAntes     = document.getElementById(alvoLinksAntes);
		linkLinksTargetAntes = document.getElementById(linkLinksAntes);
		setaLinksTargetAntes = document.getElementById(setaLinksAntes);
		
		targetLinksAntes.style.display = "none";
		linkLinksTargetAntes.className = "";
		setaLinksTargetAntes.src       = "i/seta_atuacao.gif";
	}
				
		alvoLinksAntes = alvo;
		linkLinksAntes = linkAlvo;
		setaLinksAntes = seta;
	
	if(img){
		i = document.getElementById(img);
		i.style.display = "none";
	}
}


//Mostra Divs Links Tribunais Regionais
alvoLinksAntesTr = "";
function linksTr(alvo,seta,linkAlvo,img){
	targetTr     = document.getElementById(alvo);
	linkTargetTr = document.getElementById(linkAlvo);
	setaTargetTr = document.getElementById(seta);
	
	if(targetTr.style.display == "none"){
		targetTr.style.display = "block";
		linkTargetTr.className = "ativo";
		setaTargetTr.src	   = "i/seta_atuacao_select.gif";
	}else{
		targetTr.style.display = "none";
		linkTargetTr.className = "";
		setaTargetTr.src	   = "i/seta_atuacao.gif";
	}
	
		
	if(alvoLinksAntesTr != "" && alvoLinksAntesTr != alvo){
		targetLinksAntesTr     = document.getElementById(alvoLinksAntesTr);
		linkLinksTargetAntesTr = document.getElementById(linkLinksAntesTr);
		setaLinksTargetAntesTr = document.getElementById(setaLinksAntesTr);
		
		targetLinksAntesTr.style.display = "none";
		linkLinksTargetAntesTr.className = "";
		setaLinksTargetAntesTr.src       = "i/seta_atuacao.gif";
	}
		
		
		alvoLinksAntesTr = alvo;
		linkLinksAntesTr = linkAlvo;
		setaLinksAntesTr = seta;
	
	if(img){
		i = document.getElementById(img);
		i.style.display = "none";
	}
}

//Abrir Pop Up's
function abre(url, largura, altura) {
  var esquerda = (screen.width - largura)/2;
  var topo = (screen.height - altura)/2;
  window.open(url,'','height=' + altura + ', width=' + largura + ', top=' + topo + ', left=' + esquerda);
}