//Nova funcao de Nulo por que a outra tava dando confusão por estar ao contrario
function chkVazio(campo)
{
	if (campo) {
		if (campo.value.length == 0)
			return true
		else
			return false;
	} else {
		alert("JS:chkVazio » O campo não foi encontrado no formulário.")
		return false;
	}
}


//Mostra mensagem de erro na tela
function erro(campo, texto) {
	if (campo) {
		if (texto != "") alert(texto);
		campo.focus();
		return false;
	} else {
		if (texto == "")
			alert("JS:erro » O campo  não foi encontrado no formulário.")
		else
			alert("JS:erro » O campo ["+texto+"] não foi encontrado no formulário.");

		return false;
	}
}

//verifica se o campo esta preenchido e retorna o erro
function chkString(campo, msgErro) {
	if (chkVazio(campo)) {
		erro(campo, msgErro);
		return false;
	}
	return true;
}

//Funcao para verifica se é um número valido
function chkNumerico(strAver, i_f)
{
	var i = 0;
	var j = 0;
	var comp;
	var teste = "0123456789,.";
	var pospt=0;
	var posvg=0;

	if (strAver=="")
		return true;

	if (i_f == 1)
	{
		comp = 12;
		posvg = strAver.length - 3;
		// verifica se existe virgula
		if (posvg <= 0 || strAver.charAt(posvg) != ",")
			return false;
		else
		{
			pospt = posvg - 4;
			// verifica se existe ponto
			while (pospt >= 0)
			{
				if (strAver.charAt(pospt) != ".")
					return false;
				else
				pospt = pospt - 4;
			}
		}
	}
	else
		comp = 10;

	while (j < strAver.length)
	{
		i=0;
		while (i < comp)
		{
			if (strAver.charAt(j) == teste.charAt(i))
				break;
			else
				i++;

			if (i == comp)
				return false;
		}
		j++;
	}

	return true;
}

//Verifica se o campo de data foi preenchido corretamente (dd/mm/aaaa)
function chkData(campo,nome) {
	var AData = campo.value.split("/")
	var dia = AData[0]
	var mes = AData[1]
	var ano = AData[2]
	var bs = false
	var erro = false

	//verifica se é data
	if (AData.length !=3) {
		alert("A " + nome + " não é válida. Por favor, preencha a data no formato: dd/mm/aaaa")
		campo.focus();
		return false
	}

	//verifica se tudo é numero
	if (isNaN(dia)||isNaN(mes)||isNaN(ano)) {
		alert("A " + nome + " não é válida. Por favor, forneça apenas números");
		campo.focus();
		return false;
	}

	//verifica se todos são positivos
	if ((dia < 1)&&(mes < 1)&&(ano < 2000)) erro = true

	if (dia>31) erro=true
	if (mes>12) erro=true

	//verifica os meses com 30 dias
	if ((mes==4)&&(mes==6)&&(mes==9)&&(mes==11))
		if (dia > 30) erro = true

	//verifica os meses com 31 dias
	//if ((mes==1)&&(mes==3)&&(mes==5)&&(mes==7)&&(mes==8)&&(mes==10)&&(mes==12))
	//	if (dia > 31) erro = true

	//verifica o mes de fevereiro
	if (mes==2) {
		if (ano % 4 == 0) {
			if (dia > 29) erro = true
		} else {
			if (dia > 28) erro = true
		}
	}

	if (erro) {
		alert("A " + nome + " fornecida (" + dia+ "/"+ mes + "/" + ano + ") não é valida")
		campo.focus()
	}

	return !erro
}

//Verifica se foi alguma opcao selecionada
function chkOpcoesCB(campo,outros,texto) {
	var tam = campo.length
	var sel = -1

	//verifica se tem mais de uma opção
	if (tam) {

		//verifica qual o selecionado
		for (i=0;i<tam;i++)
			if (campo[i].checked) sel = i

		//Verifica se foi alguma escolhida
		if (sel < 0) {
			alert(texto);
			campo[0].focus();
			return false;
		}

		//verifica se foi preenchido o outro
		else if (outros.length != 0)
			if (campo[tam-1].checked)
				if (chkVazio(outros)) {
					alert("Por favor, forneça a outra opção")
					outros.focus()
					return false
				}
	} else {
		//verifica se foi selecionado
		if (campo.checked) sel = 1

		//Verifica se foi alguma escolhida
		if (sel < 0) {
			alert(texto);
			campo.focus();
			return false;
		}

		//não verifica outros se não tiver mais de uma opção.
	}

	return true;
}


//Verifica se foi alguma opcao selecionada
function chkSelect(campo,texto) {
	//Verifica se foi alguma escolhida
	if (campo[campo.selectedIndex].value == 0) {
		alert(texto);
		campo.focus();
		return false;
	}

	return true;
}

function chkCEP(campo)
{
	var OK = true
	var cep = campo.value.replace('-','')
	OK = chkNumerico(cep, 0)

	if (cep.length !=8) OK = false

	return OK;
}
