function validaForm(msg, b, bmsg){
	var bloco001 = b;
	var bloco001msg = bmsg;
	var erro = "";
	var at = "";
	var ok = false;
	for(a=0;a<bloco001.length;a++){
		var nm = bloco001[a];
		if(document.getElementById(nm).value==""){
			erro+= "\n- "+bloco001msg[a]+".";
			if(at==""){at = nm;}
		}
	}
	if(erro!=""){
		alert(msg+":\n"+erro);
		document.getElementById(at).focus();
	}else{
		ok = true
	}
	if(document.getElementById('txtEstado').value == '' || document.getElementById('txtMunicipio').value == '' ){
		ok = false;
	}
	return ok;
}


function valOrcUser(acao, lvl)
{
	var f = document.orcUser;
	var ok = true;
	var msg = '';
	
	if (lvl < 3)
	{
		if(f.txtNome.value == '')
		{
			ok = false;
			msg += "- O campo 'Nome' deve ser preenchido!\n";
		}
	
		if(f.txtEmail.value == '')
		{
			ok = false;
			msg += "- O campo 'Email' deve ser preenchido!\n";
		}
	
		if(f.cmbGrupo.value == '')
		{
			ok = false;
			msg += "- O campo 'Grupo de Acesso' deve ser selecionado!\n";
		}
	
		if (acao == 'ins')
		{
				
			if(f.txtSenha.value == '')
			{
				ok = false;
				msg += "- O campo 'Senha' deve ser preenchido!\n";
			}
	
			if(f.CNFtxtSenha.value == '')
			{
				ok = false;
				msg += "- O campo 'Confirmação de Senha' deve ser preenchido!\n";
			}
		}
	}
	if (
		 (f.CNFtxtSenha.value != f.txtSenha.value)
		 &&
		 (f.CNFtxtSenha.value != '' && f.txtSenha.value != '')
		 )
	{
		ok = false;
		msg += "- A senha e a confirmação estão diferentes.\n";
	}
		
	
	if (!ok)
		alert("ERRO:\n" + msg);
	else
		f.submit();

}
	
/////////// Validador de DATA  (BETA versão 0.02b)
//
// Preparar os valores (dd/mm/yyyy) e executar essa validação 
// que já tem respostas em alert e retorno boleano
//
// Esta validação tem restrição a datas anteriores a atual
//
// Autor: Fernando G Norte <fnorte@gmail.com>
// Dt.Criação: 26.fev.2008
// Ult.Atualiz: 27.fev.2008 @ 11:45 
//////////////////////////////////////////////////////////


function valiDate(dia, mes, ano, hor, mnt) 
{
	var ok = true; // verificador de validação
	var msg = ''; // mensagens
	
	// Falta ainda um validador para receber apenas NUMEROS dos campos
	// está contando com a sorte ainda
	
	// Verifica dia válido (1 a 31)
	if (dia == "" || 
			(dia < 1 || dia > 31))
	{
		ok = false;
		msg += '- Dia errado\n';
	}

	// Verifica mês válido (1 a 12)
	if (mes == "" || 
			(mes < 1 || mes > 12))
	{
		ok = false;
		msg += '- Mês errado\n';
	}
	
	// Verifica Hora válida (1 a 23)
	if (hor == "" || 
			(hor < 1 || hor > 23))
	{
		ok = false;
		msg += '- Hora errada\n';
	}
	
	// Verifica minuto
	if (mnt == "" || 
			(mnt < 0 || mnt > 59))
	{
		ok = false;
		msg += '- Minuto errado\n';
	}
	
	
	// Cria Objeto de Data atual (pc cliente)
	var dt = new Date();

	// Verifica se ano não é anterior ao atual
	if (ano == "" || 
			ano < dt.getFullYear())
	{
		ok = false;
		msg += '- Ano errado\n';
	}

	// Verifica se a data é anterior à atual
	if (ano == dt.getFullYear() && 
		 (mes < (dt.getMonth()+1) ||
			(mes == (dt.getMonth()+1) && 
			 dia < dt.getDate())) )
	{
		ok = false;
		msg += '- Data anterior a hoje.\n';
	}

	// Verifica os meses de 30 dias
	if ((mes == 4 ||
		  mes == 6 ||
		  mes == 9)
		 &&
		 dia > 30)
	{
		ok = false;
		msg += '- Este mês tem só 30 dias.\n';
	}
	
	var bisexto; 
	bisexto = ano % 4; // Define os anos Bissextos como == 0
	
	// Verifica FEV em ano não bissexto
	if (bisexto != 0 &&
		 mes == 2 &&
		 dia > 28)
	{
		ok = false;
		msg += '- Este mês tem só 28 dias\n';
	}
	
	// Verifica FEV em ano bissexto
	if (bisexto == 0 &&
		 mes == 2 &&
		 dia > 29)
	{
		ok = false;
		msg += '- Este mês tem só 29 dias\n';
	}
	
	// Validação
	if (!ok)
		alert('Data do lembrete ( '+dia+'/'+mes+'/'+ano+' '+hor+':'+mnt+' ) inválida!\n\n'+msg);
	
	return ok;
}


