
function validarCpf (cpf)
{
	erro = new String;
	if (cpf.length < 11) erro += "Sao necessarios 11 digitos para verificacao do CPF! \n\n";
	var nonNumbers = /\D/;
	if (nonNumbers.test(cpf)) erro += "A verificacao de CPF suporta apenas numeros! \n\n";
	if (cpf == "00000000000" || cpf == "11111111111" || cpf == "22222222222" || cpf == "33333333333" || cpf == "44444444444" || cpf == "55555555555" || cpf == "66666666666" || cpf == "77777777777" || cpf == "88888888888" || cpf == "99999999999")
	{
		erro += "Numero de CPF invalido!"
	}
	var a = [];
	var b = new Number;
	var c = 11;
	for (i=0; i<11; i++)
	{
		a[i] = cpf.charAt(i);
		if (i < 9) b += (a[i] * --c);
	}
	if ((x = b % 11) < 2) { a[9] = 0 } else { a[9] = 11-x }
	b = 0;
	c = 11;
	for (y=0; y<10; y++) b += (a[y] * c--);
	if ((x = b % 11) < 2) { a[10] = 0; } else { a[10] = 11-x; }
	if ((cpf.charAt(9) != a[9]) || (cpf.charAt(10) != a[10]))
	{
		erro +="Digito verificador com problema!";
	}
	if (erro.length > 0)
	{
		alert(erro);
		return false;
	}
	return true;
}

function validarCep (cep)
{
	var regexp = /\d{8}/;
	if ( !regexp.test(cep) ) return false;
	return true;
}

function validarUf (uf)
{
	uf = uf.toUpperCase();
	var regexp = /(AC|AL|AP|AM|BA|CE|DF|ES|GO|MA|MT|MS|MG|PA|PB|PR|PE|PI|RJ|RN|RS|RO|RR|SC|SP|SE|TO)/;
	if ( !regexp.test(uf) ) return false;
	return true;
}

function validarEmail (email)
{
	var regexp = /^[^@.]+@[^@.]+(\.[^@.]+)+$/;
	if ( !regexp.test(email) ) return false;
	return true;
}

function cancelar (msg)
{
	if ( msg != '' ) alert (msg);
	return false;
}

function validar ()
{
	var f = document.getElementById('assoc');

	if ( !validarCpf(f.cpf.value) ) return cancelar ('');
	if ( f.nome.value == '' ) return cancelar ('O campo "NOME" deve ser preenchido');
	if ( f.endereco.value == '' ) return cancelar ('O campo "LOGRADOURO" deve ser preenchido');
	if ( f.numero.value == '' ) return cancelar ('O campo "NÚMERO" deve ser preenchido');
	if ( !validarCep(f.cep.value) ) return cancelar ('O campo "CEP" deve ser preenchido com 8 dígitos');
	if ( f.bairro.value == '' ) return cancelar ('O campo "BAIRRO" deve ser preenchido');
	if ( f.cidade.value == '' ) return cancelar ('O campo "CIDADE" deve ser preenchido');
	if ( !validarUf(f.uf.value) ) return cancelar ('O campo "UF" deve ser preenchido corretamente');
	if ( (f.fone.value == '') && (f.celular.value == '') ) return cancelar ('O campo "TELEFONE" (ou "CELULAR") deve ser preenchido');
	if ( !validarEmail(f.email.value) ) return cancelar ('O campo "E-MAIL" deve ser preenchido com um e-mail válido');

	return true;
}


