//v.1.6 build 80523
/*
Copyright DHTMLX LTD. http://www.dhtmlx.com
To use this component please contact sales@dhtmlx.com to obtain license
*/
dhtmlXGridObject.prototype.unGroup=function(){if (!this._groups)return;this._dndProblematic=false;delete this._groups;delete this._gIndex;if (this._fake)this._mirror_rowsCol();this.forEachRow(function(id){this.rowsAr[id].style.display=''})
this._reset_view();this.callEvent("onGridReconstructed",[])
this.callEvent("onUnGroup",[])};dhtmlXGridObject.prototype._mirror_rowsCol=function(){this._fake._groups=this._groups;this._fake._gIndex=this._gIndex;this.rowsBuffer=dhtmlxArray();for (var i=0;i ";if (this.customGroupFormat)html+=this.customGroupFormat(z.text,z.count);else html+=z.text+" ( "+z.count+" ) ";z.row.firstChild.innerHTML=html};dhtmlXGridObject.prototype._addPseudoRow=function(skip){var r=document.createElement("TR");var t=document.createElement("TD");r.appendChild(t);t.style.cssText="vertical-align:middle;font-family:Tahoma;font-size:10pt;font-weight:bold;height:30px;border:0px;border-bottom: 2px solid navy;";t.colSpan=this._cCount;var that=this;t.onclick=function(e){if (that._fake && that._realfake)that._fake._switchGroupState(that._fake._groups[that.getFirstParentOfType(this,"TR")._cntr.text].row);else
that._switchGroupState(that.getFirstParentOfType(this,"TR"));(e||event).cancelBubble="true"};t.ondblclick=function(e){(e||event).cancelBubble="true"};if (!skip){if (_isKHTML)this.obj.appendChild(r)
else
this.obj.firstChild.appendChild(r)
this.rowsCol.push(r)};return r};dhtmlXGridObject.prototype._groups_get=function(){var b=[];this._temp_par=this.obj.parentNode;this._temp_par.removeChild(this.obj);var a=[];for (var i=this.rowsCol.length-1;i>=0;i--){if (this.rowsCol[i]._cntr){this.rowsCol[i]._cntr._childs=a;a=[];b.push(this.rowsCol[i])}else a.push(this.rowsCol[i]);this.rowsCol[i].parentNode.removeChild(this.rowsCol[i])};return b};dhtmlXGridObject.prototype._groups_put=function(b){this.rowsCol=new dhtmlxArray(0);for (var i=0;i=0;i--){var val=this.cells4(this.rowsCol[i].childNodes[this._gIndex]).getValue();if (!val)val=" ";if (!this._groups[val]){this._groups[val]={text:val,row:this._addPseudoRow(true),count:0,state:"minus"};var z=this._groups[val];z.row._cntr=z;this._groups[val]._childs=[];b.push(z.row)
};this._groups[val].count++;this._groups[val]._childs.push(this.rowsCol[i]);this.rowsCol[i].parentNode.removeChild(this.rowsCol[i])};for (var i=0;i