// Biblioteca JavaScript WorkWeb 2.0
// Autor: Tulio de Melo
// Todos os direitos reservados

// [VALIDAÇÃO DE DOCUMENTOS IMPORTANTES] ***************************************
function js_val_cpf( cpf )
{
	// Se o cpf vier formato, elimina a formatação
	cpf = cpf.replace(".","");
	cpf = cpf.replace("-","");

	if( cpf.length != 11 || 
		cpf == '00000000000' || cpf == '11111111111' || cpf == '22222222222' || 
		cpf == '33333333333' || cpf == '44444444444' || cpf == '55555555555' || 
		cpf == '66666666666' || cpf == '77777777777' || cpf == '88888888888' || 
		cpf == '99999999999' )	
    	return false;
	
    var dv1_informado = cpf.substring( 9, 10 );
	var dv2_informado = cpf.substring( 10, 11 );

	var somadv1 = 0;
	var somadv2 = 0;	
	
	// Determinando o primeiro dígito verificador	
	var primeira_sequencia = cpf.substring( 0, 9 );		
	
	for( var i=0; i<9; i++ )
	{			
		somadv1 = somadv1 + ( primeira_sequencia.charAt(i) * (10-i) );
	}
	
	var restodv1 = somadv1 % 11;
	
	if( restodv1 < 2 )
		dv1 = 0;
	else
		dv1 = 11 - restodv1;
	
	if( dv1 != dv1_informado )
		return false;
		
	// Determinando o segundo dígito verificador
	var segunda_sequencia  = primeira_sequencia + dv1;
	
	for( var j=0; j<10; j++ )
	{
		somadv2 = somadv2 + ( segunda_sequencia.charAt(j) * (11-j) );
	}
	
	restodv2 = somadv2 % 11;
	
	if( restodv2 < 2 )
		dv2 = 0;
	else
		dv2 = 11 - restodv2;
		
	if( dv2 != dv2_informado )	
		return false;
	
	return true;	
}
	
function js_val_cep( cep_verificar )
 {
     exp = /^\d{5}-\d{3}$/;

     return exp.test( cep_verificar );
 }