﻿var BLACKLIGHT = BLACKLIGHT || {};
BLACKLIGHT.MCC = BLACKLIGHT.MCC || {};
BLACKLIGHT.MCC.ValidatorModifier = (function() {


    var pi_ValidationBlockArray = [];

    var pi_CheckValidators = function() {
        pi_ValidationBlockArray = $('div.fm-req');
        $.each(pi_ValidationBlockArray, function(jqBlock) {
            $(this).toggleClass('fm-error', $('span.error:visible', $(this)).length !== 0);
            //$('span.validator:visible:not(:first)', $(this)).hide();
        });
    };

    return {
        init: function(args) {
            $(function() {
                try {
                    // store the list of validation blocks
                    pi_ValidationBlockArray = $('div.fm-req');

                    // check status of validators (will pick up error messages 
                    //  for custom validators that have no client side script)
                    pi_CheckValidators();

                    // re-assign the asp.net function so my evaluation method 
                    //  can kick in when a control is validated
                    var fnOld = ValidatorUpdateIsValid;
                    ValidatorUpdateIsValid = function() {
                        fnOld();
                        pi_CheckValidators();
                    };
                } catch (e) {
                }
            });
        }
    };
} ());
