function valida($form, $action, $method){
	num = document.getElementById($form).elements.length;
	erros = 'Verifique os itens abaixo:\n\n';
	$Checkers = new Array();
	for(i=0;i<num;i++){
		if(document.getElementById($form).elements[i].getAttribute("obrigatorio")=="y" && (document.getElementById($form).elements[i].getAttribute("type")=="checkbox" || document.getElementById($form).elements[i].getAttribute("type")=="radio") && document.getElementById($form).elements[i].checked == false){
			if(!$Checkers[document.getElementById($form).elements[i].getAttribute("group")])
				$Checkers[document.getElementById($form).elements[i].getAttribute("group")] = Array();
			$Checkers[document.getElementById($form).elements[i].getAttribute("group")][0] = 1;
			$Checkers[document.getElementById($form).elements[i].getAttribute("group")][1] = document.getElementById($form).elements[i].getAttribute("legenda");
		}
		else if(document.getElementById($form).elements[i].getAttribute("obrigatorio")=="y" && (document.getElementById($form).elements[i].getAttribute("type")=="checkbox" || document.getElementById($form).elements[i].getAttribute("type")=="radio") && document.getElementById($form).elements[i].checked == true){
			if(!$Checkers[document.getElementById($form).elements[i].getAttribute("group")])
				$Checkers[document.getElementById($form).elements[i].getAttribute("group")] = Array();
			$Checkers[document.getElementById($form).elements[i].getAttribute("group")][2] = 1;
		}
		if(document.getElementById($form).elements[i].getAttribute("obrigatorio")=="y" && document.getElementById($form).elements[i].value=='')
			erros += '- ' + document.getElementById($form).elements[i].getAttribute("legenda")+'\n';
	}
	for($i=0;$i!=$Checkers.length;$i++){
		if(!$Checkers[$i][2])
			erros += '- ' + $Checkers[$i][1] +'\n';
	}
	if(erros != 'Verifique os itens abaixo:\n\n'){
		alert(erros);
		return false;
	}
	else{
		document.getElementById($form).action = $action;
		document.getElementById($form).method = $method;
		document.getElementById($form).submit();
		return false;
	}
}
function validarValor(campo, tipo) {
	switch(tipo){
		case "data": var expReg = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[1-2][0-9]\d{2})$/; msg = "Data inválida. Informe data no formato dd/mm/aaaa"; break;
		case "float": var expReg = /^[+-]?((\d+|\d{1,3}(\.\d{3})+)([\,|\.]\d*)?|\,\d+)$/; msg = "Número inválido"; break;
		case "numero": var expReg = /^\d+$/; msg = "Número inválido"; break;
		case "email": var expReg = /^[\w-]+(\.[\w-]+)*@(([A-Za-z\d][A-Za-z\d-]{0,61}[A-Za-z\d]\.)+[A-Za-z]{2,6}|\[\d{1,3}(\.\d{1,3}){3}\])$/; msg = "Email inválido"; break;
	}
	if (campo.value.match(expReg)) {
		return true;
	}
	else {
		if(campo.value != ""){
			alert(msg);
			campo.value = "";
			campo.focus();
			return false;
		}
	}
}