﻿$(function () {
    $.validator.defaults.ignore = ".ignoreValidation [data-val='true'], :hidden";
//    $(".customValidation").each(function () {
//        $.data(this, 'validator').settings.ignore = function () {
//            return ".ignoreValidation [data-val='true'], :hidden";
//        };
//    });
    //    $('form').each(function () {
    //        var v = $(this).validate();
    //        var c = v.check;
    //        v.check = function (element) {
    //            if (!$(element).is(":visible"))
    //                return true;
    //            return c.call(v, element);
    //        };
    //    });
});

var removeInputsFromValidation = function (parent) {
    $(parent).find('input, select').each(function () {
        $(this).removeClass("valid");
        $(this).removeClass("input-validation-error");
        var val = $.data(this.form, "validator")
        var ar = val.submitted;
        var n = this.name;
        var ind = ar[n];
        if (ind)
            delete ar[n];
        ar = val.errorMap;
        ind = ar[n];
        if (ind)
            delete ar[n];
        var i = 0;
        $.each(val.errorList, function () {
            if (this.element && this.element.name == n)
                val.errorList.splice(i, 1);
            i++;
        });
    });
    $(parent).find(".field-validation-error").removeClass("field-validation-error").addClass("field-validation-valid").empty();
};


