// JavaScript Document
	jQuery.noConflict();
	jQuery(document).ready(function(){
		jQuery('input[name=cpf]').blur(function(){
			validaCPF(jQuery(this), jQuery(this).val(), true);
		 });
	});

	function validaCPF(obj, str, alerta)
	{
		var numero;
		var digito = new Array(10); //Array para os dígitos do CPF.
		var aux = 0; //Índice para a string num.
		var posicao
		var i
		var soma
		var dv
		var dvInformado;
		
		/*if(obj != null)
		{
			str = obj.value;
		}*/
		
		//numero = _extraiNumero(str);
		numero = str;
		
		// Retira os dígitos formatadores de CPF '.' e '-', caso existam.
		if (str.length > 0)
		{
			while ((str.indexOf('.') != -1) || (str.indexOf('-') != -1))
			{
				if (str.indexOf('.') != -1)
				{
					aux = str.indexOf('.');
					str = str.substr(0, aux) + str.substr(aux+1, str.length-1);
				}
				if (str.indexOf('-') != -1)
				{
					aux = str.indexOf('-');
					str = str.substr(0, aux) + str.substr(aux+1, str.length-1);
				}
			} //while
		} //if
		
		//verifica CPFs manjados
		switch (str) {
			case '0':
			case '00':
			case '000':
			case '0000':
			case '00000':
			case '000000':
			case '0000000':
			case '00000000':
			case '000000000':
			case '0000000000':
			case '00000000000':
			case '11111111111':
			case '22222222222':
			case '33333333333':
			case '44444444444':
			case '55555555555':
			case '66666666666':
			case '77777777777':
			case '88888888888':
			case '99999999999':
				obj.value = '';
				alert('Por favor, digite um cpf válido');
				//document.getElementById('cpf').style.display='';
				//obj.focus();
			return false;
		}
		
		// Início da validação do CPF.
		/* Retira do número informado os dois últimos dígitos */
		dvInformado = str.substr(9,2);
		/* Desmembra o número do CPF no array digito */
		for (i=0; i<=8; i++)
		{
			digito[i] = str.substr(i,1);
		}
		/* Calcula o valor do 10o. digito de verificação */
		posicao = 10;
		soma = 0;
		for (i=0; i<=8; i++)
		{
			soma = soma + digito[i] * posicao;
			posicao--;
		}
		digito[9] = soma % 11;
		if (digito[9] < 2)
		{
			digito[9] = 0;
		}
		else
		{
			digito[9] = 11 - digito[9];
		}
		/* Calcula o valor do 11o. digito de verificação */
		posicao = 11;
		soma = 0;
		for (i=0; i<=9; i++)
		{
			soma = soma + digito[i] * posicao;
			posicao--;
		}
		digito[10] = soma % 11;
		if (digito[10] < 2)
		{
			digito[10] = 0;
		}
		else
		{
			digito[10] = 11 - digito[10];
		}
		dv = digito[9] * 10 + digito[10];
		/* Verifica se o DV calculado é igual ao informado */
		if(dv != dvInformado)
		{
			// exibe mensagem ao usuário.
			if(alerta)
			{
				obj.value = '';
				alert('Por favor, digite um cpf válido');
				//document.getElementById('cpf').style.display='';
			}
			if(obj != null)
			{
				//obj.focus();
			}
			return false;
		}
		else
		{
			//document.getElementById('cpf').style.display='none';
			return true;
		}
	}
