Add version files and new GIF images for UI components

This commit is contained in:
2025-04-03 06:26:44 +07:00
commit 663c28a2ea
5219 changed files with 772528 additions and 0 deletions

View File

@ -0,0 +1,101 @@
/*
Product Name: dhtmlxSuite
Version: 5.2.0
Edition: Professional
License: content of this file is covered by DHTMLX Commercial or Enterprise license. Usage without proper license is prohibited. To obtain it contact sales@dhtmlx.com
Copyright UAB Dinamenta http://www.dhtmlx.com
*/
// validation
if (typeof(window.dhtmlxValidation) != "undefined") {
dhtmlxValidation.trackInput = function(el,rule,callback_error,callback_correct) {
dhtmlxEvent(el, "keyup", function(e){
if (dhtmlxValidation._timer) {
window.clearTimeout(dhtmlxValidation._timer);
dhtmlxValidation._timer = null;
}
dhtmlxValidation._timer = window.setTimeout(function(){
if (!dhtmlxValidation.checkInput(el,rule)){
if (!callback_error || callback_error(el,el.value,rule)) el.className += " dhtmlx_live_validation_error";
} else {
el.className=el.className.replace(/[ ]*dhtmlx_live_validation_error/g,"");
if (callback_correct) callback_correct(el, el.value, rule);
}
},250);
});
};
dhtmlxValidation.checkInput = function(input,rule) {
return dhtmlxValidation.checkValue(input.value,rule);
};
dhtmlxValidation.checkValue = function(value,rule) {
if (typeof rule=="string") rule = rule.split(",");
var final_res = true;
for (var i=0; i<rule.length; i++) {
if (!this["is"+rule[i]]) {
alert("Incorrect validation rule: "+rule[i]);
} else {
final_res = final_res && this["is"+rule[i]](value);
}
}
return final_res;
};
};
// extension for the grid
dhtmlXGridObject.prototype.enableValidation=function(mode,live){
mode=dhx4.s2b(mode);
if (mode) this._validators = {data:[]}; else this._validators = false;
if (arguments.length>1) this._validators._live=live;
if (!this._validators._event) this._validators._event=this.attachEvent("onEditCell",this.validationEvent);
};
dhtmlXGridObject.prototype.setColValidators=function(vals){
if (!this._validators) this.enableValidation(true);
if (typeof vals == "string") vals=vals.split(this.delim);
this._validators.data=vals;
};
dhtmlXGridObject.prototype.validationEvent=function(stage,id,ind,newval,oldval){
var v=this._validators;
if (!v) return true; // validators disabled
var rule=(v.data[ind]||this.cells(id,ind).getAttribute("validate"))||"";
if (stage==1 && rule) {
var ed = this.editor||(this._fake||{}).editor;
if (!ed || !ed.getInput()) return true; //event was trigered by checkbox
ed.cell.className=ed.cell.className.replace(/[ ]*dhtmlx_validation_error/g,"");
if (v._live){
var grid=this;
dhtmlxValidation.trackInput(ed.getInput(),rule,function(element,value,rule){
return grid.callEvent("onLiveValidationError",[id,ind,value,element,rule]);
}, function(element,value,rule){
return grid.callEvent("onLiveValidationCorrect",[id,ind,value,element,rule]);
});
}
}
if (stage==2) this.validateCell(id,ind,rule,newval);
return true;
};
dhtmlXGridObject.prototype.validateCell=function(id,ind,rule,value){
rule=rule||(this._validators.data[ind]||this.cells(id,ind).getAttribute("validate"));
value=value||this.cells(id,ind).getValue();
if (!rule) return;
var cell = this.cells(id,ind).cell;
var result = true;
if (typeof rule == "string")
rule = rule.split(this.delim);
for (var i=0; i < rule.length; i++) {
if (!dhtmlxValidation.checkValue(value,rule[i])){
if (this.callEvent("onValidationError",[id,ind,value,rule[i]]))
cell.className+=" dhtmlx_validation_error";
result = false;
}
}
if (result){
this.callEvent("onValidationCorrect",[id,ind,value,rule]);
cell.className=cell.className.replace(/[ ]*dhtmlx_validation_error/g,"");
}
return result;
};