$().ready(function() {
    var errorContenedorHtml = '<p class="error_text">Existen errores en el formulario, por favor, comprueba los campos:</p>' +
    '<ul class="error_list"><span id="errorForm"></span></ul>';
    $("#errorContenedor").html(errorContenedorHtml);
    $("#errorContenedor").hide();
    $("#contacto").validate({
        onkeyup: false,
        onfocusout: false,
        onclick: false,
        focusInvalid: false,
		rules: {
			nombre: {
				required: true,
				maxlength: 255
			},
			email: {
				required: true,
				email: true,
				maxlength: 255
			},
			consulta: {
			    required: true,
			    rangelength: [50, 10000]
			}
		},
		messages: {
			nombre: {
				required: "Debes introducir un nombre",
				maxlength: jQuery.format("El campo '{0}' es demasiado largo", $("label[for='nombre']").attr("title"))
			},
			email: {
			    required: "Debes introducir un email",
			    email: "Debes introducir un email válido",
			    maxlength: jQuery.format("El campo '{0}' es demasiado largo", $("label[for='email']").attr("title"))
			},
			consulta: {
			    required: "Debes escribir alguna consulta",
			    rangelength: jQuery.format("El campo '{0}' debe contener entre {1} y {2} caracteres", $("label[for='consulta']").attr("title"), 50, 10000)
			}
		},
		errorLabelContainer: "#errorForm",
		errorElement: "li",
        showErrors: function(errorMap, errorList) {
            $("#errorContenedor").hide();
            $("#errorFormWrapper").hide();
            $("#errorForm").html("");
            if (this.numberOfInvalids() > 0) {
                $("#errorContenedor").show();
        	    this.defaultShowErrors();
        	    window.location.hash="form";
            } else {
                $("#enviar").attr("disabled", "disabled");
            }
        }
    });
});
