//:::: Função para carregar pagina ::::::::::::::::::::::::::::::::::::::::
function loadImages() {
if (document.getElementById) {  // DOM3 = IE5, NS6
document.getElementById('hidepage').style.visibility = 'hidden';
}
else {
if (document.layers) {  // Netscape 4
document.hidepage.visibility = 'hidden';
}
else {  // IE 4
document.all.hidepage.style.visibility = 'hidden';
      }
   }
}
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

//:::: Função funcionar o enter no formulario ::::::::::::::::::::::::::::::::::::::::
	function EventoEnter(pFuncao){	
		if (event.keyCode == 13){
			return eval(pFuncao);
		}
	}
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para mudar de Cor quando passa o mouse ::::::::::::::::::::::::::::::::::::::::
	function LigaCor(Obj,Cor1,Cor2){
	   Obj.style.backgroundColor = Cor1;
	   Obj.style.color = Cor2;
	}
	function DesligaCor(Obj,Cor1,Cor2){
	   Obj.style.backgroundColor = Cor1;
	   Obj.style.color = Cor2;
	}
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para fazer pesquisa direto do listbox ::::::::::::::::::::::::::::::::::::::::
	function SelObj(formname,selname,textname,str){
		this.formname = formname;
		this.selname = selname;
		this.textname = textname;
		this.select_str = str || '';
		this.selectArr = new Array();
		this.initialize = initialize;
		this.bldInitial = bldInitial;
		this.bldUpdate = bldUpdate;
	}
	
	function initialize(){
		if (this.select_str ==''){
			for(var i=0;i<document.forms[this.formname][this.selname].options.length;i++){
				this.selectArr[i] = document.forms[this.formname][this.selname].options[i];
				this.select_str += document.forms[this.formname][this.selname].options[i].value+":"+
				document.forms[this.formname][this.selname].options[i].text+",";
		   }
		}
		else{
			var tempArr = this.select_str.split(',');
			for(var i=0;i<tempArr.length;i++){
				var prop = tempArr[i].split(':');
				this.selectArr[i] = new Option(prop[1],prop[0]);
		   }
		}
		return;
	}

	function bldInitial(){
		this.initialize();
		for(var i=0;i<this.selectArr.length;i++)
		document.forms[this.formname][this.selname].options[i] = this.selectArr[i];
		document.forms[this.formname][this.selname].options.length = this.selectArr.length;
		return;
	}
	
	function bldUpdate(){
		var str = document.forms[this.formname][this.textname].value.replace('^\\s*','');
		if(str == ''){this.bldInitial();return;}
		this.initialize();
		var j = 0;
		pattern1 = new RegExp("^"+str,"i");
		for(var i=0;i<this.selectArr.length;i++)
		if(pattern1.test(this.selectArr[i].text)) 
		document.forms[this.formname][this.selname].options[j++] = this.selectArr[i];
		document.forms[this.formname][this.selname].options.length = j;
		if(j==1){
		document.forms[this.formname][this.selname].options[0].selected = true;
		document.forms[this.formname][this.textname].value = document.forms[this.formname][this.selname].options[0].text;
	   }
	}
// Colocar esta funcao na pagina
/*
	function setUp(){
	obj1 = new SelObj('menuform','itemlist','entry');
	// menuform is the name of the form you use
	// itemlist is the name of the select pulldown menu you use
	// entry is the name of text box you use for typing in
	obj1.bldInitial(); 
	}
// Colocar tambem a chamada no body da pagina: onLoad="javascript:setUp()"
*/



//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para validar se a data foi digitada corretamente :::::::::::::::::::::::::::::  
	function validaData(dia,mes,ano) {
	    var v_dia;
	    var v_mes;
	    var v_ano;
	    v_dia = dia;
	    v_mes = mes;
	    v_ano = ano;
	
	    if (((v_ano < 1900) || (v_ano > 2079)) && (v_ano.length != 0)) {
	        return(false);}
	    if (v_dia > 31){
	        return(false);}
	    if (v_mes > 12){
	        return(false);}
	    if (v_dia == "31") {
	    if ((v_mes == "04") || (v_mes == "06") || (v_mes == "09") || (v_mes == "11")){
	        return(false);}}
	    if (v_mes == "02"){
	    if (!(v_ano%4)) {
	    if (v_dia > 29) {
	    	    return(false);}}
	        else if (v_dia > 28){
	            return(false);}}
	    
	/* Testando se algum campo foi preenchido e outro deixado em branco */
	    
	    if (((v_dia != "") || (v_mes != "") || (v_ano != "")) && ((v_dia == "") || (v_mes == "") || (v_ano == ""))){
	        return(false);}
	    return(true);}
	function isFull(campo, tamanho) {
	   var field = campo; 
	
	   if (field.length == tamanho-1) return(true);
	   else return(false);
	}
	
	function verificaData(form) {
	  for (i=0; i < form.elements.length; i++) {
		if((form.elements[i].de == "data")&&(form.elements[i].value!="")){
	    var dia = form.elements[i].value.substring (0, 2);
	    var mes = form.elements[i].value.substring (3, 5);
	    var ano = form.elements[i].value.substring (6, 11);
		if ((!(isInteger(dia)))||(!(isInteger(mes)))||(!(isInteger(ano)))){
			alert("Você digitou alguma data inválida. Verifique os campos de data.");
			form.elements[i].focus();
			return true;}	  
	    else if (!(validaData(dia,mes,ano))) {
	      alert("Você digitou alguma data inválida. Verifique os campos de data.");
		  form.elements[i].focus();
	      return (true);}}}
	      return (false);}
	  
	  /* Verifica se um numero eh inteiro */
	function isInteger(p_integer) {
	  var i
	  for(i=0;i<p_integer.length-1;i++) {
	    if (p_integer.substring(i,i+1) != 0) break;};
	  i = p_integer.substring(i,p_integer.length);
	  return (parseInt(i) == (i)); }


//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para verificar se o campo é numérico :::::::::::::::::::::::::::::::::::::::::  
	function ValidaNumerico(Valor){
		if((Valor<=47)||(Valor>57)){
			event.keyCode=0;
		}
	}

//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para verificar se o campo é monetário ::::::::::::::::::::::::::::::::::::::::  
	function ValidaNumerico2(Valor){
		if ( !(Valor>47 && Valor<=57) && !(Valor==44) ){
			event.keyCode=0;
		}
	}


//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função para fazer a mascara campo data ::::::::::::::::::::::::::::::::::::::::::::::
	function MascaraData(campo1,campo2){
		var Version = navigator.appVersion;
		var VersaoReal = parseInt(Version.substring(22,26),10);
		if (VersaoReal!=5){
			if (campo1.value.length == 2){
				campo1.value += "/";
			}
			if (campo1.value.length == 5){
				campo1.value += "/";
			}
			if (campo1.value.length == (campo1.maxLength-1)){
				campo2.focus();
			}
		}
		else{
			if (campo1.value.length == 2){
				campo1.value += "/";
			}
			if (campo1.value.length == 5){
				campo1.value += "/";
			}
			if (campo1.value.length == (campo1.maxLength)){
				campo2.focus();
			}
		}
	}
//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::


//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função verificar os campos obrigatorios ::::::::::::::::::::::::::::::::::::::::::::::
//:::: ---> Criar em cada objeto que sera obrigatorio no form as propriedade: tp="Obrigatorio" e detp="Nome do campo que ra aparacer no alert"
//:::: ---> Chamada da função:
//:::: function btn_Gravar(){
//::::   if (VerificaObrigatoriosFormulario(nome_do_fomulario)) {
//::::       document.action
//::::       submit
//::::   }
//:::: }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	function VerificaObrigatoriosFormularioSemGuias(pform) {
    pform = eval(pform);
    for (i=0; i < pform.elements.length; i++) {
      if((pform.elements[i].type == "text") || (pform.elements[i].type == "textarea") || (pform.elements[i].type == "password") || (pform.elements[i].type == "file") ){
        if((pform.elements[i].tp == "Obrigatorio") && (pform.elements[i].value.length == 0) ) {
          pform.elements[i].focus();
          alert("O campo: " + pform.elements[i].detp + ", é de preenchimento obrigatório.");
          return false;
        }
      }
      if( (pform.elements[i].type == "select") || (pform.elements[i].type == "select-one") ) {
        if((pform.elements[i].tp == "Obrigatorio") && (pform.elements[i].value == "NULL") ) {
          pform.elements[i].focus();
          alert("O campo: " + pform.elements[i].detp + ", é de preenchimento obrigatório.");
          return false;
        }
      }
    }
    return true;
  }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

//::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
//:::: Função verificar os campos obrigatorios com guias :::::::::::::::::::::::::::::::::::
//:::: ---> Criar em cada objeto que sera obrigatorio no form as propriedade: tp="Obrigatorio" e detp="Nome do campo que ra aparacer no alert"
//:::: ---> Chamada da função:
//:::: function btn_Gravar(){
//::::   if (VerificaObrigatoriosFormulario(nome_do_fomulario)) {
//::::       document.action
//::::       submit
//::::   }
//:::: }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	function VerificaObrigatoriosFormulario(pform) {
    pform = eval(pform);
    for (i=0; i < pform.elements.length; i++) {
      if((pform.elements[i].type == "text") || (pform.elements[i].type == "textarea") || (pform.elements[i].type == "password") ){
        if((pform.elements[i].tp == "Obrigatorio") && (pform.elements[i].value.length == 0) ) {
          //Verificando se tem a indicacao da Guia que esta
          if ( (pform.elements[i].gs.length > 0) ){
            NavegaGuias(pform.elements[i].gs);
          }
          pform.elements[i].focus();
          alert("O campo: " + pform.elements[i].detp + ", é de preenchimento obrigatório.");
          return false;
        }
      }
      if( (pform.elements[i].type == "select") || (pform.elements[i].type == "select-one") ) {
        if((pform.elements[i].tp == "Obrigatorio") && (pform.elements[i].value == "NULL") ) {
          //Verificando se tem a indicacao da Guia que esta
          if ( (pform.elements[i].gs.length > 0) ){
            NavegaGuias(pform.elements[i].gs);
          }
          pform.elements[i].focus();
          alert("O campo: " + pform.elements[i].detp + ", é de preenchimento obrigatório.");
          return false;
        }
      }
    }
    return true;
  }
//:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
	
