function isAlpha(obj){
   obj.value=RetiraAspas(obj.value);
   alpha="qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM";
   v=obj.value;
  
   if (v == "")  
     return false;  
   
   for(i=0;i<=v.length-1;i++){
        f=i+1;
        s=v.substring(i,f);
        if(alpha.indexOf(s)<0){
          return false;
        }
   }
   return true; 
}

function isNumber(obj){
   obj.value=RetiraAspas(obj.value);
   num="01213456789";
   v=obj.value;
  
   if (v == "")  
     return false;  
   
   for(i=0;i<=v.length-1;i++){
        f=i+1;
        s=v.substring(i,f);
        if(num.indexOf(s)<0){
          return false;
        }
   }
   return true; 
}

function isDecimal(obj, mrc){ //obj -> Objeto do formulário.
   num="01213456789"+mrc;
   v=obj.value;
   dot = false;

   if (v == "")
     return false;

   for(i=0;i<=v.length-1;i++){
	f=i+1;
	s=v.substring(i,f);
	if(num.indexOf(s)<0){
	  return false;
	}
    if ((s == mrc) && !dot) {
	   dot = true; }
	 else {
	  if ((s == mrc) && dot) {
       return false; }
     }

   }
   return true;
}

function checkCPF(NumCPF) {
var Soma, Laco, Digito1, Digito2;
var cpf_invalido = "11111111111,22222222222,33333333333,44444444444,55555555555,66666666666,77777777777,88888888888,99999999999"; //,00000000000";  

if (cpf_invalido.indexOf(NumCPF) >= 0)
  return false;

  // {primeiro digito}
  Soma = 0;
  for (Laco=0;Laco<9;Laco++) {
    Soma = Soma + (NumCPF.substring(Laco,Laco+1)*(Laco+1));
  } // fim for.

  Digito1 = Soma % 11;
  if (parseInt(Digito1) == 10) {Digito1 = 0;}

  //{segundo digito}
  Soma = 0;
  for (Laco=0;Laco<8;Laco++) {
    Soma = Soma + (NumCPF.substring(Laco+1,Laco+2)*(Laco+1));
  } // fim for.
  
  Soma = Soma + (Digito1 * 9);
  Digito2 = Soma % 11;
  
  if (parseInt(Digito2) == 10) { Digito2 = 0;}
  //{faz a chekagem}
   if (parseInt(Digito1) == parseInt(NumCPF.substring(9,10))) {
    if (parseInt(Digito2) == parseInt(NumCPF.substring(10,11))) {
      return true;
    } // fim if1
   } // fim if2
 return false; 
} // end function.

function isCPF(obj, mens) {
 obj.value=RetiraAspas(obj.value);
 if (!isNumber(obj)) {
   alert(mens);
   return false;
 } else {
   if (obj.value.length < 11) {
         alert(mens);
     return false;
   } // fim do if   
  } // fim do else
  if (!checkCPF(obj.value)) { 
     alert(mens);
     return false;
  }
  return true;
} // fim do function

function chkCep (obj, mens) {
  obj.value=RetiraAspas(obj.value);
    if (!isNumber(obj)) {
        alert(mens);
        return false;
    } else {
      if (obj.value.length != 8) {
          alert(mens);
          return false;
      } // fim do if
    } // fim do else   
    return true;
}

  function replaceString(oldS, newS, fullS) {
   var indice;
  
   indice = fullS.indexOf(oldS);
      
   if (indice < 0)
     return fullS;

   nfullS = "";
   oldindice = 0;
  
   while(indice < fullS.length && indice != -1) {
     if (indice >= 0)
	nfullS = nfullS + fullS.substring(oldindice, indice) + newS;
     oldindice = indice+1;
     indice = fullS.indexOf(oldS, indice + 1);
   }

 if (oldindice < fullS.length)
   nfullS = nfullS + fullS.substring(oldindice, fullS.length);

   return nfullS; 
}

function RetiraAspas(Str) {
  if (Str == "")
    return Str;
  Str=replaceString("'","",Str);
  Str=replaceString('"','',Str);
  return (Str);
}

  function validarCampoTexto(obj, msg)
  {
    obj.value=RetiraAspas(obj.value);
    if (obj.value == "")
	{
      alert(msg);
	  return false;
	}
    return true;
  }

function isMail(obj, mens){ //obj -> Objeto do formulário.
  obj.value=RetiraAspas(obj.value);
  arroba = "@";
  mail = obj.value;
  if (mail == "") {
    alert(mens);
        return false;
  }
   
  A1 = mail.indexOf(arroba);
  if (A1 < 0) {
     alert(mens);
     return false;  
  }
   
  cliente = mail.substring(0,A1);
  provedor = mail.substring(A1+1,mail.length);
  ponto = ".";
  P1 = provedor.indexOf(ponto);
         
  if (P1 < 0) {
    alert(mens);
    return false;
  }
  return true;
}

 function chkTel(obj, len, msg) {
    if ((obj.value.length < len) || (!isNumber(obj))) {
	  alert(msg);
	  return false;
	}
	return true;
  }

  function isRG(obj, mens)
  {
    obj.value=RetiraAspas(obj.value);
    if (!isNumber(obj)) {
      alert(mens);
      return false;
	}
	//outros teste...
    return true;   
  }

  function chkDate(dia, mes, ano, msg) {
   d = dia.value;
   m = mes.value;
   a = ano.value;
   if ((isNaN(parseInt(d)) || isNaN(parseInt(m)) || 
        isNaN(parseInt(a))) ||
        (a < 1900 || a > 9999) ||
        (m < 1 || m > 12) ||
        (d < 1 || d > 31) ||
        (m == 2 && d > 28 && (a % 4 != 0)) ||
        (m == 2 && d > 29 && (a % 4 == 0)) ||
        ((d > 30) && (m == 4) ||
        (d > 30) && (m == 6) ||
        (d > 30) && (m == 9) ||
        (d > 30) && (m == 11))) {
      alert(msg);
      return false;
	}
  return true;
}

  function chkDate2(dia, mes, ano, msg) {
   d = dia.options[dia.selectedIndex].value;
   m = mes.options[mes.selectedIndex].value;
   a = ano.options[ano.selectedIndex].value;
   if ((isNaN(parseInt(d)) || isNaN(parseInt(m)) || 
        isNaN(parseInt(a))) ||
        (a < 1900 || a > 9999) ||
        (m < 1 || m > 12) ||
        (d < 1 || d > 31) ||
        (m == 2 && d > 28 && (a % 4 != 0)) ||
        (m == 2 && d > 29 && (a % 4 == 0)) ||
        ((d > 30) && (m == 4) ||
        (d > 30) && (m == 6) ||
        (d > 30) && (m == 9) ||
        (d > 30) && (m == 11))) {
      alert(msg);
      return false;
	}
  return true;
}

function validarSenha(texto)
{             //A1234B
  mascara = /^[A-Za-z][0-9]{4}[A-Za-z]{2}$/ ;
  return mascara.test(texto);
}

  var hasLayers = (document.layers) ? 1 : 0;
  var strLayer = (hasLayers) ? "document.layers" : "document.all";
  var values = new Array("hidden", "visible", "hide", "show");

  function setVisible(name, value) {
    eval(strLayer + "['" + name + "']." + (hasLayers ? "visibility" : "style.visibility") + 
         "='" + values[2 * hasLayers + value] + "'");
    return true;
  }

  function getVisible(name) {
    var value = (hasLayers) ? document.layers[name].visibility : 
                              document.all[name].style.visibility;
    return ((value == "show") || (value == "visible")) ? 1 : 0;
  }

  function changeVisible(name) {
    setVisible(name, !getVisible(name));
    return true;
  }

  function changeTabIE(name) {
    var i=0;

    for (; i<document.getElementsByTagName("DIV").length; i++) 
      document.getElementsByTagName("DIV")[i].style.visibility = 
        (document.getElementsByTagName("DIV")[i].id == name) ? "visible" : "hidden";

/*    for (i=0; i<document.all.tags("TD").length; i++) {
	  if (document.all.tags("TD")[i].id.substr(0, 3) == "aba") {
        document.all.tags("TD")[i].bgColor = 
          (document.all.tags("TD")[i].id == aname) ? "#ECECFF" : "#C0C0C0"; // #BCC7D7
	  }
	} */
  }
  
  function changeTabNS(name) {
  var i=0;

    for (; i<document.layers.length; i++) 
      document.layers[i].visibility = 
        (document.layers[i].name == name) ? "show" : "hide";
  }

  function changeTab(name) {
    (hasLayers) ? changeTabNS(name) : changeTabIE(name);
  }

  function setFocus(obj, tab, msg) {
    alert(msg);
    changeTab('tab' + tab);
    obj.focus();
    return true;
  }

  function mostrarM (bloco, f) {
//     changeTab ("mosaico"+bloco);
     desmarcaDias(f, bloco);
	 return;
  }

  function desmarcaDias(f, bloco) {
	  if (f.blc == null || f.blc.length == null)
		  reutrn;

	  for (var i=0; i < f.blc.length; i++) {
		  if (f.blc[i].value != bloco && f.elements["mosaico"+f.blc[i].value].value == "S")
             desmarcaDiasBloco (f, f.blc[i].value);
      }
	  return;
  }

  function desmarcaDiasBloco(f, bloco) {
	  if (f.elements["dias"+bloco] == null)
		  return;

      var dias = f.elements["dias"+bloco];
	  if (dias.length == null)
		  dias.checked = false;
	  else {
        for (var i=0; i < dias.length; i++)
          dias[i].checked = false;
      }
	  return;
  }

	function MascaraData(keypress, objeto){
            if(document.all) { // Internet Explorer
                var tecla = event.keyCode;
            }
            else {
            //    if(document.layers) { // Nestcape ou Mozilla
                var tecla = keypress.which;
            //    }
            }
	    campo = eval (objeto);
		caracteres = '01234567890';
		separacoes = 2;
		separacao1 = '/';
		separacao2 = '/';
		conjuntos = 2;
		conjunto1 = 2;
		conjunto2 = 5;
                if ((caracteres.search(String.fromCharCode (tecla))!=-1) && campo.value.length < (conjunto1 + conjunto2 + 3))
			{
			if (campo.value.length == conjunto1) campo.value = campo.value + separacao1;
			if (campo.value.length == conjunto2) campo.value = campo.value + separacao2;
			}			
		else 
			event.returnValue = false;
	}

function validaData(obj)
{
    var exprReg=/^[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}$/

        data = obj.value;
        if (data == "")
		  return true;

        dia = data.substring (0, 2);                
        validaDia = false;
        for(i = 1 ; i < 32 ; i++){
            if(dia == i){
                validaDia = true;
            }
        }
        mes = data.substring (3, 5);
        validaMes = false;
        for(i = 1 ; i < 13 ; i++){
            if(mes == i){
                validaMes = true;
            }                
        }
        ano = data.substring (6, 10);
        validaAno = false;
        if(ano > 1900){
                validaAno = true;
        }
                
    if(!validaDia || !validaMes || !validaAno){
            alert("Data em formato inválido!");
            obj.focus();
            obj.select();
            return false;
    }    
    if (!(exprReg.test(obj.value)))
    {
        alert("Data em formato inválido!");
        obj.focus();
        obj.select();
        return false;
    }
    return true;
}
