﻿function InitValidation() {

    var __funcbody, newfunc;

    __funcbody = ValidatorUpdateDisplay.toString();
    __funcbody = __funcbody.substring(__funcbody.indexOf("{") + 1, __funcbody.lastIndexOf("}"));

    newfunc = new Function("val", "ChangeInputClass(val ); " + __funcbody);

    ValidatorUpdateDisplay = newfunc;

}

function ChangeInputClass(val) {

    if ($(val).parent() != null) {

        var parentDiv = $(val).parent();

        allvalid = true;

        // Find out all validators associated
        var vals = new Array();
        for (k = 0; k < Page_Validators.length; k++) {

            allvalid = allvalid && Page_Validators[k].isvalid;

            if (Page_Validators[k].controltovalidate == val.controltovalidate)
                vals.push(Page_Validators[k]);
        }

        //Determine if some validator fails
        value = true;
        for (k = 0; k < vals.length; k++)
            value = (value && vals[k].isvalid);

        ChangeDivClass(parentDiv, value);
        ChangeSummary(allvalid);
    }
}

function ChangeDivClass(element, isValid) {
    if (isValid) {
        $(element).removeClass("Error");
    }
    else {
        $(element).addClass("Error");
    }
}

function ChangeSummary(isValid) {

    var element = $("div[class='ErrorMessage']");

    if (isValid) {
        element.css("display","none");
    }
    else {
        element.css("display", "block");
    }
}
