	function CPFValido(st)
		{ 
		   st = st;
		   if (st == "") {
			   alert('CPF Inválido.');
			   return (false);			   
		   }
		   if (st == "0000000000"){
			   alert('CPF Inválido.');
			   return (false);
		   }
		   l = st.length;
		   st2 = "";
		   for (i = 0; i < l; i++)
		   {
			   caracter = st.substring(i,i+1)
			   if ((caracter >= '0') && (caracter <= '9'))
				   st2 = st2 + caracter;
		   }
		   if ((st2.length > 11) || (st2.length < 10)){
			   alert('CPF Inválido.')
			   return (false);
		   }
			   if (st2.length == 10)
				   st2 = '0' + st2;
			   digito1 = st2.substring(9,10)
			   digito2 = st2.substring(10,11)
			   digito1 = parseInt(digito1,10)
			   digito2 = parseInt(digito2,10)
			   sum = 0; mul = 10;
			   for (i = 0; i < 9 ; i++)
			   {
				   digit = st2.substring(i,i+1);
				   tproduct = parseInt(digit ,10)*mul;
				   sum += tproduct;
				   mul--;
			   }
			   dig1 = ( sum % 11 )
			   if ( dig1 == 0 || dig1 == 1 )
				   dig1 = 0;
			   else
				   dig1 = 11 - dig1
				   if (dig1!=digito1){
					   alert('CPF Inválido.');
					   return (false);					   
					   }
			   sum = 0; mul = 11;
			   for (i = 0; i < 10 ; i++)
			   {
				   digit = st2.substring(i,i+1);
				   tproduct = parseInt(digit ,10)*mul;
				   sum += tproduct;
				   mul--;
			   }
			   dig2 = (sum % 11)
			   if ( dig2 == 0 || dig2 == 1 )
				   dig2 = 0;
			   else
				   dig2 = 11 - dig2;
			   if (dig2 != digito2){
				   alert('CPF Inválido!');
				   return (false);
			   }
			   return (true)
		}

function FormataCPF(pForm,pCampo,pTamMax,pPos1,pPos2,pPosTraco,pTeclaPres){
	 var wTecla, wVr, wTam;
	 
		   // alert(pForm[pCampo].value);
	  
	 wTecla = pTeclaPres.keyCode;
	 wVr = pForm[pCampo].value;
	 wVr = wVr.toString().replace( "-", "" );
	 wVr = wVr.toString().replace( ".", "" );
	 wVr = wVr.toString().replace( ".", "" );
	 wVr = wVr.toString().replace( "/", "" );
	 wTam = wVr.length ;
	
	 if (wTam < pTamMax && wTecla != 8) { 
		wTam = wVr.length + 1 ; 
	 }
	
	 if (wTecla == 8 ) { 
		wTam = wTam - 1 ; 
	 }
	   
	 if ( wTecla == 8 || wTecla == 88 || wTecla >= 48 && wTecla <= 57 || wTecla >= 96 && wTecla <= 105 ){
	  if ( wTam <= 2 ){
		pForm[pCampo].value = wVr ;
	  }
	  if (wTam > pPosTraco && wTam <= pTamMax) {
			wVr = wVr.substr(0, wTam - pPosTraco) + '-' + wVr.substr(wTam - pPosTraco, wTam);
	  }
	  if ( wTam == pTamMax){
			wVr = wVr.substr( 0, wTam - pPos1 ) + '.' + wVr.substr(wTam - pPos1, 3) + '.' + wVr.substr(wTam - pPos2, wTam);
	  }
	  pForm[pCampo].value = wVr;
	 
	 }			
	}
	
	function Tecla(e)
	{
	if (document.all) // Internet Explorer
		var tecla = event.keyCode;
	else if(document.layers) // Nestcape
		var tecla = e.which;
		if (tecla > 47 && tecla < 58) // numeros de 0 a 9
			return true;
		else
			{
				if (tecla != 8) // backspace
					event.keyCode = 0;
					//return false;
				else
					return true;
			}
	}

	function valida(){
		// Validação das datas válidas,
		// essa ainda não  é a validação de dias úteis, que será feita no asp
		/*
		if ((formCalculo.selDia.selectedIndex == formCalculo.selDiaFim.selectedIndex)&&(formCalculo.selMes.selectedIndex == formCalculo.selMesFim.selectedIndex)&&(formCalculo.selAno.selectedIndex == formCalculo.selAnoFim.selectedIndex)){
			alert('Datas iguais, o valor é o mesmo.');
			return false;
		}
		*/
		// Fevereiro
		if ((formCalculo.selMes.selectedIndex+1 == 2)&&(formCalculo.selDia.selectedIndex+1 > 28)){
			alert('Data inválida1, por favor verifique.');
			return false;
		}
		if ((formCalculo.selMesFim.selectedIndex+1 == 2)&&(formCalculo.selDiaFim.selectedIndex+1 > 28)){
			alert('Data inválida2, por favor verifique.');
			return false;		}
		
		// Meses com apenas 30 dias
		if (((formCalculo.selMes.selectedIndex+1 == 4)&&(formCalculo.selDia.selectedIndex+1 > 30))||((formCalculo.selMes.selectedIndex+1 == 6)&&(formCalculo.selDia.selectedIndex+1 > 30))||((formCalculo.selMes.selectedIndex+1 == 9)&&(formCalculo.selDia.selectedIndex+1 > 30))||((formCalculo.selMes.selectedIndex+1 == 11)&&(formCalculo.selDia.selectedIndex+1 > 30))){
			alert('Data inválida3, por favor verifique.');
			return false;
		}
		if (((formCalculo.selMesFim.selectedIndex+1 == 4)&&(formCalculo.selDiaFim.selectedIndex+1 > 30))||((formCalculo.selMesFim.selectedIndex+1 == 6)&&(formCalculo.selDiaFim.selectedIndex+1 > 30))||			((formCalculo.selMesFim.selectedIndex+1 == 9)&&(formCalculo.selDiaFim.selectedIndex+1 > 30))||((formCalculo.selMesFim.selectedIndex+1 == 11)&&(formCalculo.selDiaFim.selectedIndex+1 > 30))){
			alert('Data inválida4, por favor verifique.');
			return false;
		}
	}	