/*
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
*/
dhtmlXGridObject.prototype._process_json_row=function(r, data){
r._attrs=data;
for (var j = 0; j < r.childNodes.length; j++)r.childNodes[j]._attrs={
};
if (data.userdata)
for (var a in data.userdata)
this.setUserData(r.idd,a,data.userdata[a]);
data = this._c_order?this._swapColumns(data.data):data.data;
for (var i=0; i 0)
this.clearAll(true);
var sets = [
[],
[],
[],
[],
[],
[],
[],[],[]
];
var attrs = ["value", "width", "type", "align", "sort", "color", "format", "hidden", "id"];
var calls = ["", awidthmet, "setColTypes", "setColAlign", "setColSorting",
"setColumnColor", "", "", "setColumnIds"];
for (var i = 0; i < headCol.length; i++)
for (var j = 0; j < attrs.length; j++)
sets[j].push(headCol[i][attrs[j]]);
this.setHeader(sets[0]);
for (var i = 0; i < calls.length; i++)
if (calls[i])
this[calls[i]](sets[i].join(this.delim));
for (var i = 0; i < headCol.length; i++){
var options = headCol[i].options
if (headCol[i].options){
if (this.cellType[i] == "clist"){
this.registerCList(i, options);
} else {
var combo = this.getCombo(i);
for (var j = 0; j < options.length; j++)
combo.put(options[j].id, options[j].value);
}
} else {
if (sets[6][i])
if ((this.cellType[i].toLowerCase().indexOf("calendar")!=-1)||(this.fldSort[i] == "date"))
this.setDateFormat(sets[6][i]);
else
this.setNumberFormat(sets[6][i], i);
}
}
this.init();
var param=sets[7].join(this.delim);
//preserving state of hidden columns, if not specified directly
if (this.setColHidden && param.replace(/,/g,"")!="")
this.setColHidden(param);
if ((split)&&(this.splitAt))
this.splitAt(split);
};
dhtmlXGridObject.prototype._process_json=function(data, mode){
this._parsing=true;
try {
var data = data.responseText || data;
if (typeof data == "string"){
eval("dhtmlx.temp="+data+";");
data = dhtmlx.temp;
}
} catch(e){
dhx4.callEvent("onLoadXMLError", ["Incorrect JSON",
(data.xmlDoc||data),
this
]);
data = {rows:[]};
}
if (this._refresh_mode) return this._refreshFromJSON(data);
if (data.head)
this._parseHeadJson(data);
this._parseOptionsJson(data);
var cr = parseInt(data.pos||0);
var total = parseInt(data.total_count||0);
var reset = false;
if (total){
if (!this.rowsBuffer[total-1]){
if (this.rowsBuffer.length)
reset=true;
this.rowsBuffer[total-1]=null;
}
if (total