var __prevValidatorUpdateDisplay; //var Page_ValidatorExtenders = new Array(); var Page_ValidatorExtendersSummaryByControl = new Array(); function newValidatorUpdateDisplay(val) { // call previous ValidatorUpdateDisplay() function __prevValidatorUpdateDisplay(val); for(i = 0; i < Page_ValidatorExtenders.length; i++) { var __veValidatorID = Page_ValidatorExtenders[i][0]; var __veControlID = Page_ValidatorExtenders[i][1]; var __veErrorClassName = Page_ValidatorExtenders[i][2]; var __veErrorCallFunction = Page_ValidatorExtenders[i][3]; var __veOriginalClassName = Page_ValidatorExtenders[i][4]; var __veExtendedControlID = Page_ValidatorExtenders[i][5]; var __veShowValidator = Page_ValidatorExtenders[i][6]; if(val.id == __veValidatorID && ((val.controltovalidate == __veControlID) || (val.controltovalidate == null && __veControlID == ""))) { var control = document.getElementById(__veControlID); var validatorControl = document.getElementById(__veValidatorID); var extendedControl = document.getElementById(__veExtendedControlID); // alert(__veValidatorID + ' / ' + __veControlID + ' / ' + __veExtendedControlID); // add class and change tooltip if(__veErrorClassName != "") { // remove error class name and title if no one of the previous validators // with the same controltovalidate property wasn't failed var hasErrors = false; // for(i in Page_ValidatorExtendersSummaryByControl[__veControlID]) // if(!Page_ValidatorExtendersSummaryByControl[__veControlID][i].isvalid) // hasErrors = true; for(j in Page_ValidatorExtendersSummaryByControl[__veExtendedControlID]) if(!Page_ValidatorExtendersSummaryByControl[__veExtendedControlID][j].isvalid) hasErrors = true; if (!hasErrors) { //RemoveClassName(control, __veErrorClassName); RemoveClassName(extendedControl, __veErrorClassName); if(control != null) if(control.title != null) control.title = ""; } if (!val.isvalid) { //AddClassName(control, __veErrorClassName); AddClassName(extendedControl, __veErrorClassName); if(control != null) if(control.title != null && val.attributes.title != null) control.title = val.attributes.title.value; } if(!__veShowValidator) validatorControl.style.display = 'none'; //if(typeof(Page_ValidatorExtendersSummaryByControl[__veControlID]) == "undefined") // Page_ValidatorExtendersSummaryByControl[__veControlID] = new Array(); //Page_ValidatorExtendersSummaryByControl[__veControlID][__veValidatorID] = val; if(typeof(Page_ValidatorExtendersSummaryByControl[__veExtendedControlID]) == "undefined") Page_ValidatorExtendersSummaryByControl[__veExtendedControlID] = new Array(); Page_ValidatorExtendersSummaryByControl[__veExtendedControlID][__veValidatorID] = val; } // call custom function if(__veErrorCallFunction != "" && eval("typeof("+__veErrorCallFunction+")") == "function") if (!val.isvalid) eval(__veErrorCallFunction+"(val)"); } } } function trim(str) { return str.replace(/^\s+|\s+$/, ""); } function AddClassName (elem, className) { RemoveClassName(elem, className); elem.className = trim(elem.className + " " + className); } function RemoveClassName (elem, className) { elem.className = trim(elem.className.replace(className, "")); } var __prevWindowOnLoad = window.onload; window.onload = function() { if(typeof(ValidatorUpdateDisplay) == 'function') { // save previous ValidatorUpdateDisplay() __prevValidatorUpdateDisplay = ValidatorUpdateDisplay; // set new ValidatorUpdateDisplay() ValidatorUpdateDisplay = newValidatorUpdateDisplay; } // call previous window.onload() event if(typeof(__prevWindowOnLoad) == 'function') __prevWindowOnLoad(); }