<!--

/*
	showDiv(idDiv, hide)
	hide == 0 --> Mostra a Div
	hide == 1 --> Mostra a Div e esconde a última aberta
	hide == 2 --> Mostra a Div e esconde todas as outras abertas
	hide == 3 --> Esconde todas as Div's
*/

var stack = [];

function showDiv(id, hide) {

	var hideDiv;
	var myDiv;

	if ((stack.length != 0) && (hide == 1)) {
		hideDiv = stack.pop();
		myDiv = document.getElementById(hideDiv);
		myDiv.style.display = "none";
	}

	if ((stack.length != 0) && ((hide == 2) || (hide == 3))) {
		for (var i = 0; i <= stack.length; i++) {
			hideDiv = stack.pop();
			myDiv = document.getElementById(hideDiv);
			myDiv.style.display = "none";
		}
	}

	if (hide <= 2) {
		myDiv = document.getElementById(id);
	
		if (myDiv.style.display == "none") {
			myDiv.style.display = "";
			stack.push(id);
		}
	}
}


	function selectOption(selectID, Option){
    obj = document.getElementById(selectID);
    for(var i=0;i<obj.options.length;i++){
    	obj.options[i].selected = (obj.options[i].value == Option);
  	}
	}

	// mask para Data (dd/mm/aaaa) evento OnKeyUp
  function maskData( event, obj) {
    tam = obj.value.length;
    if ((tam==2) || (tam==5)) obj.value = obj.value + "/";
  };

	// mask para Hora (hh:mm) evento OnKeyUp
	function maskHora( event, obj) {
		tam = obj.value.length;
	  if (tam==2) obj.value = obj.value + ":";
	};

	// mask para CEP evento OnKeyUp
  function maskCEP( event, obj) {
    tam = obj.value.length;
    if (tam==5) obj.value = obj.value + "-";
  };	


	//valida hora
	function isTime(S) {
	  return /^([01]?[0-9]|[2][0-3])(:[0-5][0-9])?$/.test(S)
	}
	
	//valida hora
  function ehHora(obj) {
		// verifica se tem 5 caracteres 00:00
		if (obj.value.length!=5) { return false; }

		// verifica se a hora está em 0 e 24 e se os minutos estao entre 0 e 59
	  var strHora = obj.value;
		strHora = strHora.split(':');
		if (strHora[0]<0 || strHora[0]>24 || strHora[1]<0 || strHora[1]>59 ) {
			return false;
		}
    return true;
  };
	

	function MM_preloadImages() { //v3.0
  	var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
	}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.0
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && document.getElementById) x=document.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function PopUp(I, W, H){
	lpos = (screen.availWidth/2) - (W/2);
	tpos = (screen.availHeight/2) - (H/2);
	window.open(I,'janfoto','scrollbars=no,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
}

function PopUpRolagem(I, W, H){
  lpos = (screen.availWidth/2) - (W/2);
  tpos = (screen.availHeight/2) - (H/2);
  window.open(I,'','scrollbars=yes,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
}

function validaemail(src) {
  emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[a-zA-Z]$"
  var regex = new RegExp(emailReg);
  return regex.test(src);	
}


function mostraFoto(foto,wdh,hgt,legenda){
  posL = screen.availWidth/2 - wdh/2;
  posT = screen.availHeight/2 - hgt/2;
  str = 'width='+wdh+', height='+hgt+', left='+posL+', top='+posT+', scrollbars=no';
  window.open('mostraFoto.asp?foto='+foto+'&legenda='+legenda,'',str);
}

  //limpa os campos
  
  function teste(c){
    while((cx=c.indexOf("-"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("/"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(","))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("."))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf("("))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(")"))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    while((cx=c.indexOf(" "))!=-1){		
      c = c.substring(0,cx)+c.substring(cx+1);
    }
    return(c);
  }


  //valida CNPJ
  function validaCNPJ(StrCGC){
    
    var varFirstChr = StrCGC.charAt(0);
    var vlMult,vlControle,s1, s2 = "";
    var i,j,vlDgito,vlSoma = 0;
    
    for ( var i=0; i<=13; i++ ){
      var c = StrCGC.charAt(i);
      if(!(c>="0") && (c<="9")){
        return false;
      }
      if(c!=varFirstChr){
        vaCharCGC = true;
      }
    }
    
    if(!vaCharCGC){
      return false;
    }
    
    s1 = StrCGC.substring(0,12);
    s2 = StrCGC.substring(12,15);
    vlMult = "543298765432";
    vlControle = "";
     
    for (j=1; j<3; j++){
      vlSoma = 0;
      for (i=0; i<12; i++){
        vlSoma += eval( s1.charAt(i) )* eval( vlMult.charAt(i) );
      }
     
      if(j == 2){
        vlSoma += (2 * vlDgito);
      }
      
      vlDgito = ((vlSoma*10) % 11);
      
      if(vlDgito == 10){
        vlDgito = 0;
      }
      
      vlControle = vlControle + vlDgito;
      vlMult = "654329876543";
    }
  
    if(vlControle != s2){
      return false;
    } else {
      return true;
    }
  }

  //valida CPF
  function validaCPF(StrCPF){
    
    x = 0;
    soma = 0;
    dig1 = 0;
    dig2 = 0;
    texto = "";
    StrCPF1="";
    len = StrCPF.length;
    x = len -1;
    
    for (var i=0; i <= len - 3; i++){
      y = StrCPF.substring(i,i+1);
      soma = soma + ( y * x);
      x = x - 1;
      texto = texto + y;
    }
    
    dig1 = 11 - (soma % 11);
    if (dig1 == 10) dig1=0 ;
    if (dig1 == 11) dig1=0 ;
    StrCPF1 = StrCPF.substring(0,len - 2) + dig1 ;
    x = 11; soma=0;
    
    for (var i=0; i <= len - 2; i++){
      soma = soma + (StrCPF1.substring(i,i+1) * x);
      x = x - 1;
    }
    
    dig2= 11 - (soma % 11);
    
	if (dig2 == 10) dig2=0;
    if (dig2 == 11) dig2=0;
    if ((dig1 + "" + dig2) == StrCPF.substring(len,len-2)){
      return true;
    } else {
      return false;
	}
  }

  //valida a data
  function isdate(Data){
		var dma = -1;
		var data = Array(3);
		var ch = Data.charAt(0);
		for(i=0; i < Data.length && (( ch >= '0' && ch <= '9' ) || ( ch == '/' && i != 0 ) ); ){
			data[++dma] = '';
			if(ch!='/' && i != 0) return false;
			if(i != 0 ) ch = Data.charAt(++i);
			if(ch=='0') ch = Data.charAt(++i);
			while( ch >= '0' && ch <= '9' ){
				data[dma] += ch;
				ch = Data.charAt(++i);
			}
		}
		if(ch!='') return false;
		if(data[0] == '' || isNaN(data[0]) || parseInt(data[0]) < 1) return false;
		if(data[1] == '' || isNaN(data[1]) || parseInt(data[1]) < 1 || parseInt(data[1]) > 12) return false;
		if(data[2] == '' || isNaN(data[2]) || ((parseInt(data[2]) < 0 || parseInt(data[2]) > 99 ) && (parseInt(data[2]) < 1900 || parseInt(data[2]) > 9999))) return false;
		if(data[2] < 50) data[2] = parseInt(data[2]) + 2000;
		else if(data[2] < 100) data[2] = parseInt(data[2]) + 1900;
		switch(parseInt(data[1])){
			case 2: { if(((parseInt(data[2])%4!=0 || (parseInt(data[2])%100==0 && parseInt(data[2])%400!=0)) && parseInt(data[0]) > 28) || parseInt(data[0]) > 29 ) return false; break; }
			case 4: case 6: case 9: case 11: { if(parseInt(data[0]) > 30) return false; break;}
			default: { if(parseInt(data[0]) > 31) return false;}
		}
		return true;
	}


  //valida o e-mail
  function validaemail(src) {
    emailReg = "^[\\w-_\.]*[\\w-_\.]\@[\\w]\.+[\\w]+[a-zA-Z]$"
    var regex = new RegExp(emailReg);
    return regex.test(src);	
  }
  
  //somente números são desbloqueados
  function digitos(digit){
	digit.keyCode = ((digit.keyCode < 48) || (digit.keyCode > 57))?0:digit.keyCode;
  }

  //somente dígitos e vírgula são aceitos
  function valores(digit){
	digit.keyCode = (((digit.keyCode < 48) || (digit.keyCode > 57)) && (digit.keyCode != 44))?0:digit.keyCode;
  }
  
  //somente dígitos e barra são aceitos
  function datas(digit){
	digit.keyCode = ((digit.keyCode < 47) || (digit.keyCode > 57))?0:digit.keyCode;
  }
  
  
  //vê se tem algum checkbox marcado
  function selecionoucheck(checkitem){
    selecionou = false;
	if (isNaN(checkitem.length)){
	  selecionou = checkitem.checked;
	} else {
	  i = 0;
	  while ( (i <= (checkitem.length -1)) && (!selecionou) ){
/*
		if (checkitem[i].checked){
		  selecionou = true;
		}
*/
	selecionou = checkitem[i].checked;
    	i++;
	  }
	}
    return selecionou;
  }
  
  function getTimeNow(ano, mes, dia){
    var now = new Date();
    var data = new Date(ano, mes, dia, now.getHours(),now.getMinutes(), now.getSeconds());
	return data;
  }
  
  //cria um objeto do tipo date
  function createdate(dia, mesano){
	mes = mesano;
	ano = mesano;
	
	mes = mes.substring(0, 2) - 1;
	ano = ano.substring(3, ano.length);
	
    var data = getTimeNow(ano, mes, dia);//, now.getMilliseconds());
	return data;
  }
  
  //converte uma string de data no formato brasileiro em um objeto do tipo date;
  function cdate(strdata){
    strdata = strdata.split('/');
    datacv  = getTimeNow(strdata[2], strdata[1] - 1, strdata[0]);
    return datacv;
  }
  
  //verifica se é numérico
  function isNumeric (str){
    if (str.length == 0) {
	  return false;
	} else {
	  //return !isNaN(String(str.replace('.', '')).replace(',', '.'))
	  return !isNaN(str.replace(',', '.'))
	}
  }
  
  
  //tira os espaços em branco e retorna o tamanho da string
  function limpa(str){
	var x = String(str).trim();
	x = x.replace(/[^A-Za-z0-9_]*/, '');
	
	// cadeia inteira => @#$%¨&*()[]{}^~_-="'<>/\|;:`´,•+?!
	// cadeia que passa => _-="'<>/\|;:`´,•+?!
	
//	chars = '@#$%¨&*()[]{}^~_-="\'<>/\\|;:`´,•+\?\!';
//	alert(chars +'\n'+ str);
//	for (i=0; i < chars.length; i++){
//	  c = chars.charAt(i);
//	  x = x.replace(c, '');
//	  alert(x);
//	}
	return x.length;
  }
  
  //procura por caracteres inválidos na string
  function ehvalido(str){
	var aux = str.trim();
	if (aux.length == 0){
	  return false;
	} else {
	  chars = '@#$%¨&*()[]{}^~_-="\'<>/\\|;:`´,•+\?\!';
	  i = 0;
	  invalido = false;
	  while ((i < chars.length) && (!invalido)){
		c = chars.charAt(i);
		if (aux.indexOf(c) != -1) { invalido = true; }
		i++;
	  }
	  return !invalido;
	}
  }  
  
  //pôe o cursor no objeto e seleciona o conteúdo
  function setfocus(obj){
	obj.focus();
	obj.select();
  }
  /*

  //instancia o método trim
  String.prototype.trim = function(){
	var x=this;
	x=x.replace(/^\s*(.*)/, "$1");
	x=x.replace(/(.*?)\s*$/, "$1");
	return x;
  }
  
  //instancia o método strRev
  String.prototype.strRev = function(){
	var tmp = "";
	var str = this;
	for (i=str.length-1; i>=0; i--){
      tmp += str.charAt(i);
	}
	return tmp;
  }
  */
  function PopUp(I, W, H){
	lpos = (screen.availWidth/2) - (W/2);
	tpos = (screen.availHeight/2) - (H/2);
	window.open(I,'','scrollbars=0,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
  //window.open(I,'','scrollbars=0,left='+lpos+',top='+tpos+',width='+W+',height='+H).focus();
  }
	
	// e = elemento em questão(utilizado em objetos <select>)
	function alterVisibility(e, obj) {
		if ( e.value == 4 ) {
			document.getElementById(obj).style.display = '';
		} else {
			document.getElementById(obj).style.display = 'none';
		}
	}
//-->



//---------------------------------------------------------------------------------------------------------	
//					FUNCOES GENERICAS PRA PGM FIDELIDADE
//---------------------------------------------------------------------------------------------------------	

	function JavaInteiro(){
		if(((event.keyCode>=0x30)&&(event.keyCode<=0x39))||(event.keyCode==8)||(event.keyCode==13)){
			return true;
		}
		event.keyCode=0;
	}
	
	function FormataData(Campo){
		if(((event.keyCode<35)||(event.keyCode>40))&&(event.keyCode!=46)&&(event.keyCode!=8)){
			tam=Campo.value.length;str="";
			for(x=0;x<=tam;x++){
				if(Campo.value.substring(x,x+1)!="/"){
					str+=Campo.value.substring(x,x+1);
				}
			}
			aux=str.substring(0,2);
			if(str.length>1)aux=aux+"/";
			aux=aux+str.substring(2,4);
			if(str.length>3)
				aux=aux+"/";
			Campo.value=aux+str.substring(4,8);
		}
	}
	function OnTabGenerico(){
		if(event.keyCode==13){
			event.keyCode=9;
		}
	}
	function FDtValida(PObjeto, PFlag, PMsgBox){
		if(PObjeto.style.display=="none"){
			return true;
		}
		LData = PObjeto.value;
		if ((PFlag)&&(LData == "")){
			return FInv(PObjeto,"Preenchimento obrigatório !", PMsgBox);
		}
		if (LData != ""){
			if (LData.length != 10){
				return FInv(PObjeto,"O formato para os campos Data é DD/MM/AAAA !", PMsgBox);
			}
			if (((LData.substring(3,5) > 12)||(LData.substring(3,5) < 1)) || (LData.substring(0,2) < 1) || (LData.substring(6,10) < 1900)) {
				return FInv(PObjeto,"Data Inválida !",PMsgBox);
			}
			if (LData.substring(3,5) == 2){
				LMaxDias = (((1996 - LData.substring(6,10)) % 4) == 0) ? 29 : 28
			} 
			else{
				if (LData.substring(3,5) <= 7){LMaxDias = ((LData.substring(3,5) % 2) == 0) ? 30 : 31
				}
				else{
					LMaxDias = ((LData.substring(3,5) % 2) == 0) ? 31 : 30
				}
			}
			if (LMaxDias < LData.substring(0,2)) {
				return FInv(PObjeto,"Data Inválida !",PMsgBox);
			}
		}
		return true;
	}
	function FInv(PObjeto,PMsg,PMsgBox){
		alert(PMsg);
		FJSetafocus(PObjeto);
		return false;
	}
	function FJSetafocus(pObj){
		try{
			pObj.focus();
		}
		catch(e){}
	}
	function JavaCurrency(objeto){
		lCodeDig=event.keyCode;
		if(((lCodeDig>=0x30)&&(lCodeDig<=0x39))||(lCodeDig==8)||(lCodeDig==45)||(lCodeDig==13)||(lCodeDig==AscChrDec)){
			texto=objeto.value;
			ExCharDec=false;
			ExMenos=false;
			ExCharDec=(texto.indexOf(ChrDec)!=-1);
			ExMenos=(texto.indexOf("-")!=-1);
			if(((ExCharDec)&&(lCodeDig==AscChrDec))||(ExMenos&&(lCodeDig==45) )){
				alert("Campo deve ser numérico !");
				event.keyCode=0;
				objeto.value="";
			}
			FJSetafocus(objeto);
			return true;
		}
		return false;
	}
	function JavaBlur(objeto, NDecimais, PFlag) {
		if (objeto.value != ""){
			objeto.value = FormataDecimais(objeto.value, NDecimais);
			return false;
		}else if(PFlag){
			return FInv(objeto,"Preenchimento obrigatório !", false);
		}
	}
	function FormataDecimais(Val,NDec){

		Val=RmvVirg(Val);
		TemMenos=(Val.indexOf("-")!=-1);
		if(TemMenos){
			Val=Val.replace("-", "");
		}
		Mi=parseFloat(1 + FNDec(NDec));
		Val=ReplaceCHR(Val,ChrDec,ChrMil);
		Val=(Math.round(Val*Mi))/Mi;Val=Val.toString();
		Val=ReplaceCHR(Val,ChrMil,ChrDec);
		Val=Val.toString();
		posic=Val.indexOf(ChrDec);
		ValInt=((posic!=-1)?Val.substring(0,posic):Val);
		VR=(posic!=-1)?Val.substring(posic+1,Val.length):"0";
		VR=VR+FNDec(NDec-VR.length);
		TamInt=ValInt.length;
		K=parseInt(TamInt/3);
		Ret="";
		for(i=0;i<=K-1;i++){
			Ret=ValInt.substring(TamInt-((i+1)*3),TamInt-(i*3))+((Ret!="")?ChrMil:"")+Ret;
		}
		if(TamInt/3>K){
			Ret=ValInt.substring(TamInt-((i+1)*3),TamInt-(i*3))+((Ret!="")?ChrMil:"")+Ret;
		}
		if(TemMenos){
			Ret="-"+Ret;
		}
		return Ret+ChrDec+VR;
		
	}
	function FNDec(Desejado){
		retorno = "";
		for (k=1;k<=Desejado;k++){
			retorno = retorno + "0";
		}
		return  retorno;
	}
	function RmvVirg(Val){
		Val=Val.toString();
		posic=Val.indexOf(ChrMil);
		while (posic!=-1){
			Val=Val.substring(0,posic) + Val.substring(posic + 1,Val.length);
			posic = Val.indexOf(ChrMil);
		}
		return Val;
	}
	function ReplaceCHR(str,chrFind,chrAlt){
		posic=str.indexOf(chrFind);
		if(posic!=-1){
			str=str.substring(0,posic)+chrAlt+str.substring(posic+1,str.length);
		}
		return str;
	}