function IsEmail(Source)
{
	var Pos=0;		//POSICAO DOS SIMBOLOS
	var Texto="";	//VALOR A SER TESTADO

	Texto=Source;
	if (Texto!="")
	{//EXISTE VALOR	
		Pos=Texto.indexOf("@",0);
		if ((Pos<=0) || (Pos==Texto.length-1))
		{//NAO PODE SER EMAIL NAO TEM @ OU COMECA POR @ OU TERMINA POR @
			return(false);
		}//if
		Pos=Texto.indexOf("@",Pos+1);
		if (Pos!=-1)
		{//NAO PODE SER EMAIL TEM 2 @
			return(false);
		}//if
	}//if
	return(true);
}

function Replace(Expression, Find, Replace)
{
	var temp = Expression;
	var a = 0;

	for (var i = 0; i < Expression.length; i++) 
	{
		a = temp.indexOf(Find);
		if (a == -1)
			break
		else
			temp = temp.substring(0, a) + Replace + temp.substring((a + Find.length));
	}

	return temp;
}

function AllowOnly(Expression)
{
	Expression = Expression.toLowerCase();
	Expression = Replace(Expression, 'a..z', 'abcdefghijklmnopqrstuvwxyz');
	Expression = Replace(Expression, '0..9', '0123456789');
	Expression = Replace(Expression, '|', '');

	var ch = String.fromCharCode(window.event.keyCode);
	ch = ch.toLowerCase();
	Expression = Expression.toLowerCase();
	var a = Expression.indexOf(ch);
	if (a == -1) 
		window.event.keyCode = 0;
}

function IsCPF(Source)
{
	var Total=0;			//SOMA DOS DIGITOS
	var Digito1=0;			//DIGITO INFERIOR
	var Digito2=0;			//DIGITO SUPERIOR
	var Texto="";			//VARIAVEL DE TRABALHO
	
	Texto=Source;
	if (Texto!="")
	{//EXISTE VALOR
		if (Texto.length!=11)
		{// TAMANHO IMPROPRIO
			return(false);
		}//if
		if (!IsInteger(Texto))
		{// EXISTEM CARACTERES NAO NUMERICOS
			return(false);
		}//if
		
		
		if ((Texto.charAt(0)==Texto.charAt(1)) && (Texto.charAt(1)==Texto.charAt(2)) && (Texto.charAt(2)==Texto.charAt(3)) && (Texto.charAt(3)==Texto.charAt(4)) && (Texto.charAt(4)==Texto.charAt(5)) && (Texto.charAt(5)==Texto.charAt(6)) && (Texto.charAt(6)==Texto.charAt(7)) && (Texto.charAt(7)==Texto.charAt(8)) && (Texto.charAt(8)==Texto.charAt(9)) && (Texto.charAt(9)==Texto.charAt(10)))
		{//TODOS OS NUMEROS IGUAIS
			return(false);
		}//if
		
		
		
		Total=Texto.charAt(9)*2+Texto.charAt(8)*3+Texto.charAt(7)*4+Texto.charAt(6)*5+Texto.charAt(5)*6+Texto.charAt(4)*7+Texto.charAt(3)*8+Texto.charAt(2)*9+Texto.charAt(1)*10+Texto.charAt(0)*11;
		Digito1=Total%11;
		if (Digito1<=1)
		{//DIGITO PREJUDICADO
			Digito1=0;
		}//if
		else
		{//COMPLEMENTO
			Digito1=11-Digito1;
		}//else
		Total=Texto.charAt(8)*2+Texto.charAt(7)*3+Texto.charAt(6)*4+Texto.charAt(5)*5+Texto.charAt(4)*6+Texto.charAt(3)*7+Texto.charAt(2)*8+Texto.charAt(1)*9+Texto.charAt(0)*10;
		Digito2=Total%11;
		if (Digito2<=1)
		{//DIGITO PREJUDICADO
			Digito2=0;
		}//if
		else
		{//COMPLEMENTO
			Digito2=11-Digito2;
		}//else
		if ((Digito2!=Texto.charAt(9)) || (Digito1!=Texto.charAt(10)))
		{//DIGITO NAO CONFERE
			return(false);
		}//if
	}//if
	return(true);
}

function check_cgc (StrCGC)
 {
      var vaCharCGC
	  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;
      }                          
}
