function montaQuery(id, validador) {

	var query = "#" + id + "_" + validador;
	return query = query.replace(":", "\\:");

}

function showErros(erros) {

	for ( var aux = 0; aux < erros.length; aux++) {

		var input = erros[aux][0];
		var validador = erros[aux][1];
		var elemento = montaQuery(jQuery(input).attr('id'), validador);

		jQuery(elemento).show("slow");
		jQuery(input).addClass(errorClass);

	}
}

function validaForm(form) {

	form.erros = [];

	jQuery(form).find("input, select, textarea").each(function() {

		var input = this;
		var classes = jQuery(input).attr("class").split(" ");

		for ( var aux = 0; aux < classes.length; aux++) {
			try {
				var validador = classes[aux];
				var funcao = validadores[validador];
				
				if (funcao(jQuery(input).attr('value'))) {

					var elemento = montaQuery(jQuery(input).attr('id'), validador);

					jQuery(elemento).hide();
					jQuery(input).removeClass(errorClass);

				} else {

					form.erros.push( [ input, classes[aux] ]);

				}

			} catch (e) {

			}
		}
	});

	if (form.erros.length > 0) {
		showErros(form.erros);
		return false;
	} else {
		return true;
	}
}
