Newer
Older
EMS-WEB-3.0 / out / artifacts / ems_war_exploded / s / jquery-easyui-1.4.3 / plugins / jquery.treegrid.js
wxn on 9 Aug 2016 26 KB first commit
/**
 * jQuery EasyUI 1.4.3
 * 
 * Copyright (c) 2009-2015 www.jeasyui.com. All rights reserved.
 *
 * Licensed under the GPL license: http://www.gnu.org/licenses/gpl.txt
 * To use it on other terms please contact us at info@jeasyui.com
 *
 */
(function($){
function _1(_2){
var _3=$.data(_2,"treegrid");
var _4=_3.options;
$(_2).datagrid($.extend({},_4,{url:null,data:null,loader:function(){
return false;
},onBeforeLoad:function(){
return false;
},onLoadSuccess:function(){
},onResizeColumn:function(_5,_6){
_16(_2);
_4.onResizeColumn.call(_2,_5,_6);
},onBeforeSortColumn:function(_7,_8){
if(_4.onBeforeSortColumn.call(_2,_7,_8)==false){
return false;
}
},onSortColumn:function(_9,_a){
_4.sortName=_9;
_4.sortOrder=_a;
if(_4.remoteSort){
_15(_2);
}else{
var _b=$(_2).treegrid("getData");
_2f(_2,0,_b);
}
_4.onSortColumn.call(_2,_9,_a);
},onClickCell:function(_c,_d){
_4.onClickCell.call(_2,_d,_37(_2,_c));
},onDblClickCell:function(_e,_f){
_4.onDblClickCell.call(_2,_f,_37(_2,_e));
},onRowContextMenu:function(e,_10){
_4.onContextMenu.call(_2,e,_37(_2,_10));
}}));
var _11=$.data(_2,"datagrid").options;
_4.columns=_11.columns;
_4.frozenColumns=_11.frozenColumns;
_3.dc=$.data(_2,"datagrid").dc;
if(_4.pagination){
var _12=$(_2).datagrid("getPager");
_12.pagination({pageNumber:_4.pageNumber,pageSize:_4.pageSize,pageList:_4.pageList,onSelectPage:function(_13,_14){
_4.pageNumber=_13;
_4.pageSize=_14;
_15(_2);
}});
_4.pageSize=_12.pagination("options").pageSize;
}
};
function _16(_17,_18){
var _19=$.data(_17,"datagrid").options;
var dc=$.data(_17,"datagrid").dc;
if(!dc.body1.is(":empty")&&(!_19.nowrap||_19.autoRowHeight)){
if(_18!=undefined){
var _1a=_1b(_17,_18);
for(var i=0;i<_1a.length;i++){
_1c(_1a[i][_19.idField]);
}
}
}
$(_17).datagrid("fixRowHeight",_18);
function _1c(_1d){
var tr1=_19.finder.getTr(_17,_1d,"body",1);
var tr2=_19.finder.getTr(_17,_1d,"body",2);
tr1.css("height","");
tr2.css("height","");
var _1e=Math.max(tr1.height(),tr2.height());
tr1.css("height",_1e);
tr2.css("height",_1e);
};
};
function _1f(_20){
var dc=$.data(_20,"datagrid").dc;
var _21=$.data(_20,"treegrid").options;
if(!_21.rownumbers){
return;
}
dc.body1.find("div.datagrid-cell-rownumber").each(function(i){
$(this).html(i+1);
});
};
function _22(_23){
return function(e){
$.fn.datagrid.defaults.rowEvents[_23?"mouseover":"mouseout"](e);
var tt=$(e.target);
var fn=_23?"addClass":"removeClass";
if(tt.hasClass("tree-hit")){
tt.hasClass("tree-expanded")?tt[fn]("tree-expanded-hover"):tt[fn]("tree-collapsed-hover");
}
};
};
function _24(e){
var tt=$(e.target);
if(tt.hasClass("tree-hit")){
var tr=tt.closest("tr.datagrid-row");
var _25=tr.closest("div.datagrid-view").children(".datagrid-f")[0];
_26(_25,tr.attr("node-id"));
}else{
$.fn.datagrid.defaults.rowEvents.click(e);
}
};
function _27(_28,_29){
var _2a=$.data(_28,"treegrid").options;
var tr1=_2a.finder.getTr(_28,_29,"body",1);
var tr2=_2a.finder.getTr(_28,_29,"body",2);
var _2b=$(_28).datagrid("getColumnFields",true).length+(_2a.rownumbers?1:0);
var _2c=$(_28).datagrid("getColumnFields",false).length;
_2d(tr1,_2b);
_2d(tr2,_2c);
function _2d(tr,_2e){
$("<tr class=\"treegrid-tr-tree\">"+"<td style=\"border:0px\" colspan=\""+_2e+"\">"+"<div></div>"+"</td>"+"</tr>").insertAfter(tr);
};
};
function _2f(_30,_31,_32,_33){
var _34=$.data(_30,"treegrid");
var _35=_34.options;
var dc=_34.dc;
_32=_35.loadFilter.call(_30,_32,_31);
var _36=_37(_30,_31);
if(_36){
var _38=_35.finder.getTr(_30,_31,"body",1);
var _39=_35.finder.getTr(_30,_31,"body",2);
var cc1=_38.next("tr.treegrid-tr-tree").children("td").children("div");
var cc2=_39.next("tr.treegrid-tr-tree").children("td").children("div");
if(!_33){
_36.children=[];
}
}else{
var cc1=dc.body1;
var cc2=dc.body2;
if(!_33){
_34.data=[];
}
}
if(!_33){
cc1.empty();
cc2.empty();
}
if(_35.view.onBeforeRender){
_35.view.onBeforeRender.call(_35.view,_30,_31,_32);
}
_35.view.render.call(_35.view,_30,cc1,true);
_35.view.render.call(_35.view,_30,cc2,false);
if(_35.showFooter){
_35.view.renderFooter.call(_35.view,_30,dc.footer1,true);
_35.view.renderFooter.call(_35.view,_30,dc.footer2,false);
}
if(_35.view.onAfterRender){
_35.view.onAfterRender.call(_35.view,_30);
}
if(!_31&&_35.pagination){
var _3a=$.data(_30,"treegrid").total;
var _3b=$(_30).datagrid("getPager");
if(_3b.pagination("options").total!=_3a){
_3b.pagination({total:_3a});
}
}
_16(_30);
_1f(_30);
$(_30).treegrid("showLines");
$(_30).treegrid("setSelectionState");
$(_30).treegrid("autoSizeColumn");
_35.onLoadSuccess.call(_30,_36,_32);
};
function _15(_3c,_3d,_3e,_3f,_40){
var _41=$.data(_3c,"treegrid").options;
var _42=$(_3c).datagrid("getPanel").find("div.datagrid-body");
if(_3e){
_41.queryParams=_3e;
}
var _43=$.extend({},_41.queryParams);
if(_41.pagination){
$.extend(_43,{page:_41.pageNumber,rows:_41.pageSize});
}
if(_41.sortName){
$.extend(_43,{sort:_41.sortName,order:_41.sortOrder});
}
var row=_37(_3c,_3d);
if(_41.onBeforeLoad.call(_3c,row,_43)==false){
return;
}
var _44=_42.find("tr[node-id=\""+_3d+"\"] span.tree-folder");
_44.addClass("tree-loading");
$(_3c).treegrid("loading");
var _45=_41.loader.call(_3c,_43,function(_46){
_44.removeClass("tree-loading");
$(_3c).treegrid("loaded");
_2f(_3c,_3d,_46,_3f);
if(_40){
_40();
}
},function(){
_44.removeClass("tree-loading");
$(_3c).treegrid("loaded");
_41.onLoadError.apply(_3c,arguments);
if(_40){
_40();
}
});
if(_45==false){
_44.removeClass("tree-loading");
$(_3c).treegrid("loaded");
}
};
function _47(_48){
var _49=_4a(_48);
if(_49.length){
return _49[0];
}else{
return null;
}
};
function _4a(_4b){
return $.data(_4b,"treegrid").data;
};
function _4c(_4d,_4e){
var row=_37(_4d,_4e);
if(row._parentId){
return _37(_4d,row._parentId);
}else{
return null;
}
};
function _1b(_4f,_50){
var _51=$.data(_4f,"treegrid").options;
var _52=$(_4f).datagrid("getPanel").find("div.datagrid-view2 div.datagrid-body");
var _53=[];
if(_50){
_54(_50);
}else{
var _55=_4a(_4f);
for(var i=0;i<_55.length;i++){
_53.push(_55[i]);
_54(_55[i][_51.idField]);
}
}
function _54(_56){
var _57=_37(_4f,_56);
if(_57&&_57.children){
for(var i=0,len=_57.children.length;i<len;i++){
var _58=_57.children[i];
_53.push(_58);
_54(_58[_51.idField]);
}
}
};
return _53;
};
function _59(_5a,_5b){
if(!_5b){
return 0;
}
var _5c=$.data(_5a,"treegrid").options;
var _5d=$(_5a).datagrid("getPanel").children("div.datagrid-view");
var _5e=_5d.find("div.datagrid-body tr[node-id=\""+_5b+"\"]").children("td[field=\""+_5c.treeField+"\"]");
return _5e.find("span.tree-indent,span.tree-hit").length;
};
function _37(_5f,_60){
var _61=$.data(_5f,"treegrid").options;
var _62=$.data(_5f,"treegrid").data;
var cc=[_62];
while(cc.length){
var c=cc.shift();
for(var i=0;i<c.length;i++){
var _63=c[i];
if(_63[_61.idField]==_60){
return _63;
}else{
if(_63["children"]){
cc.push(_63["children"]);
}
}
}
}
return null;
};
function _64(_65,_66){
var _67=$.data(_65,"treegrid").options;
var row=_37(_65,_66);
var tr=_67.finder.getTr(_65,_66);
var hit=tr.find("span.tree-hit");
if(hit.length==0){
return;
}
if(hit.hasClass("tree-collapsed")){
return;
}
if(_67.onBeforeCollapse.call(_65,row)==false){
return;
}
hit.removeClass("tree-expanded tree-expanded-hover").addClass("tree-collapsed");
hit.next().removeClass("tree-folder-open");
row.state="closed";
tr=tr.next("tr.treegrid-tr-tree");
var cc=tr.children("td").children("div");
if(_67.animate){
cc.slideUp("normal",function(){
$(_65).treegrid("autoSizeColumn");
_16(_65,_66);
_67.onCollapse.call(_65,row);
});
}else{
cc.hide();
$(_65).treegrid("autoSizeColumn");
_16(_65,_66);
_67.onCollapse.call(_65,row);
}
};
function _68(_69,_6a){
var _6b=$.data(_69,"treegrid").options;
var tr=_6b.finder.getTr(_69,_6a);
var hit=tr.find("span.tree-hit");
var row=_37(_69,_6a);
if(hit.length==0){
return;
}
if(hit.hasClass("tree-expanded")){
return;
}
if(_6b.onBeforeExpand.call(_69,row)==false){
return;
}
hit.removeClass("tree-collapsed tree-collapsed-hover").addClass("tree-expanded");
hit.next().addClass("tree-folder-open");
var _6c=tr.next("tr.treegrid-tr-tree");
if(_6c.length){
var cc=_6c.children("td").children("div");
_6d(cc);
}else{
_27(_69,row[_6b.idField]);
var _6c=tr.next("tr.treegrid-tr-tree");
var cc=_6c.children("td").children("div");
cc.hide();
var _6e=$.extend({},_6b.queryParams||{});
_6e.id=row[_6b.idField];
_15(_69,row[_6b.idField],_6e,true,function(){
if(cc.is(":empty")){
_6c.remove();
}else{
_6d(cc);
}
});
}
function _6d(cc){
row.state="open";
if(_6b.animate){
cc.slideDown("normal",function(){
$(_69).treegrid("autoSizeColumn");
_16(_69,_6a);
_6b.onExpand.call(_69,row);
});
}else{
cc.show();
$(_69).treegrid("autoSizeColumn");
_16(_69,_6a);
_6b.onExpand.call(_69,row);
}
};
};
function _26(_6f,_70){
var _71=$.data(_6f,"treegrid").options;
var tr=_71.finder.getTr(_6f,_70);
var hit=tr.find("span.tree-hit");
if(hit.hasClass("tree-expanded")){
_64(_6f,_70);
}else{
_68(_6f,_70);
}
};
function _72(_73,_74){
var _75=$.data(_73,"treegrid").options;
var _76=_1b(_73,_74);
if(_74){
_76.unshift(_37(_73,_74));
}
for(var i=0;i<_76.length;i++){
_64(_73,_76[i][_75.idField]);
}
};
function _77(_78,_79){
var _7a=$.data(_78,"treegrid").options;
var _7b=_1b(_78,_79);
if(_79){
_7b.unshift(_37(_78,_79));
}
for(var i=0;i<_7b.length;i++){
_68(_78,_7b[i][_7a.idField]);
}
};
function _7c(_7d,_7e){
var _7f=$.data(_7d,"treegrid").options;
var ids=[];
var p=_4c(_7d,_7e);
while(p){
var id=p[_7f.idField];
ids.unshift(id);
p=_4c(_7d,id);
}
for(var i=0;i<ids.length;i++){
_68(_7d,ids[i]);
}
};
function _80(_81,_82){
var _83=$.data(_81,"treegrid").options;
if(_82.parent){
var tr=_83.finder.getTr(_81,_82.parent);
if(tr.next("tr.treegrid-tr-tree").length==0){
_27(_81,_82.parent);
}
var _84=tr.children("td[field=\""+_83.treeField+"\"]").children("div.datagrid-cell");
var _85=_84.children("span.tree-icon");
if(_85.hasClass("tree-file")){
_85.removeClass("tree-file").addClass("tree-folder tree-folder-open");
var hit=$("<span class=\"tree-hit tree-expanded\"></span>").insertBefore(_85);
if(hit.prev().length){
hit.prev().remove();
}
}
}
_2f(_81,_82.parent,_82.data,true);
};
function _86(_87,_88){
var ref=_88.before||_88.after;
var _89=$.data(_87,"treegrid").options;
var _8a=_4c(_87,ref);
_80(_87,{parent:(_8a?_8a[_89.idField]:null),data:[_88.data]});
var _8b=_8a?_8a.children:$(_87).treegrid("getRoots");
for(var i=0;i<_8b.length;i++){
if(_8b[i][_89.idField]==ref){
var _8c=_8b[_8b.length-1];
_8b.splice(_88.before?i:(i+1),0,_8c);
_8b.splice(_8b.length-1,1);
break;
}
}
_8d(true);
_8d(false);
_1f(_87);
$(_87).treegrid("showLines");
function _8d(_8e){
var _8f=_8e?1:2;
var tr=_89.finder.getTr(_87,_88.data[_89.idField],"body",_8f);
var _90=tr.closest("table.datagrid-btable");
tr=tr.parent().children();
var _91=_89.finder.getTr(_87,ref,"body",_8f);
if(_88.before){
tr.insertBefore(_91);
}else{
var sub=_91.next("tr.treegrid-tr-tree");
tr.insertAfter(sub.length?sub:_91);
}
_90.remove();
};
};
function _92(_93,_94){
var _95=$.data(_93,"treegrid");
$(_93).datagrid("deleteRow",_94);
_1f(_93);
_95.total-=1;
$(_93).datagrid("getPager").pagination("refresh",{total:_95.total});
$(_93).treegrid("showLines");
};
function _96(_97){
var t=$(_97);
var _98=t.treegrid("options");
if(_98.lines){
t.treegrid("getPanel").addClass("tree-lines");
}else{
t.treegrid("getPanel").removeClass("tree-lines");
return;
}
t.treegrid("getPanel").find("span.tree-indent").removeClass("tree-line tree-join tree-joinbottom");
t.treegrid("getPanel").find("div.datagrid-cell").removeClass("tree-node-last tree-root-first tree-root-one");
var _99=t.treegrid("getRoots");
if(_99.length>1){
_9a(_99[0]).addClass("tree-root-first");
}else{
if(_99.length==1){
_9a(_99[0]).addClass("tree-root-one");
}
}
_9b(_99);
_9c(_99);
function _9b(_9d){
$.map(_9d,function(_9e){
if(_9e.children&&_9e.children.length){
_9b(_9e.children);
}else{
var _9f=_9a(_9e);
_9f.find(".tree-icon").prev().addClass("tree-join");
}
});
if(_9d.length){
var _a0=_9a(_9d[_9d.length-1]);
_a0.addClass("tree-node-last");
_a0.find(".tree-join").removeClass("tree-join").addClass("tree-joinbottom");
}
};
function _9c(_a1){
$.map(_a1,function(_a2){
if(_a2.children&&_a2.children.length){
_9c(_a2.children);
}
});
for(var i=0;i<_a1.length-1;i++){
var _a3=_a1[i];
var _a4=t.treegrid("getLevel",_a3[_98.idField]);
var tr=_98.finder.getTr(_97,_a3[_98.idField]);
var cc=tr.next().find("tr.datagrid-row td[field=\""+_98.treeField+"\"] div.datagrid-cell");
cc.find("span:eq("+(_a4-1)+")").addClass("tree-line");
}
};
function _9a(_a5){
var tr=_98.finder.getTr(_97,_a5[_98.idField]);
var _a6=tr.find("td[field=\""+_98.treeField+"\"] div.datagrid-cell");
return _a6;
};
};
$.fn.treegrid=function(_a7,_a8){
if(typeof _a7=="string"){
var _a9=$.fn.treegrid.methods[_a7];
if(_a9){
return _a9(this,_a8);
}else{
return this.datagrid(_a7,_a8);
}
}
_a7=_a7||{};
return this.each(function(){
var _aa=$.data(this,"treegrid");
if(_aa){
$.extend(_aa.options,_a7);
}else{
_aa=$.data(this,"treegrid",{options:$.extend({},$.fn.treegrid.defaults,$.fn.treegrid.parseOptions(this),_a7),data:[]});
}
_1(this);
if(_aa.options.data){
$(this).treegrid("loadData",_aa.options.data);
}
_15(this);
});
};
$.fn.treegrid.methods={options:function(jq){
return $.data(jq[0],"treegrid").options;
},resize:function(jq,_ab){
return jq.each(function(){
$(this).datagrid("resize",_ab);
});
},fixRowHeight:function(jq,_ac){
return jq.each(function(){
_16(this,_ac);
});
},loadData:function(jq,_ad){
return jq.each(function(){
_2f(this,_ad.parent,_ad);
});
},load:function(jq,_ae){
return jq.each(function(){
$(this).treegrid("options").pageNumber=1;
$(this).treegrid("getPager").pagination({pageNumber:1});
$(this).treegrid("reload",_ae);
});
},reload:function(jq,id){
return jq.each(function(){
var _af=$(this).treegrid("options");
var _b0={};
if(typeof id=="object"){
_b0=id;
}else{
_b0=$.extend({},_af.queryParams);
_b0.id=id;
}
if(_b0.id){
var _b1=$(this).treegrid("find",_b0.id);
if(_b1.children){
_b1.children.splice(0,_b1.children.length);
}
_af.queryParams=_b0;
var tr=_af.finder.getTr(this,_b0.id);
tr.next("tr.treegrid-tr-tree").remove();
tr.find("span.tree-hit").removeClass("tree-expanded tree-expanded-hover").addClass("tree-collapsed");
_68(this,_b0.id);
}else{
_15(this,null,_b0);
}
});
},reloadFooter:function(jq,_b2){
return jq.each(function(){
var _b3=$.data(this,"treegrid").options;
var dc=$.data(this,"datagrid").dc;
if(_b2){
$.data(this,"treegrid").footer=_b2;
}
if(_b3.showFooter){
_b3.view.renderFooter.call(_b3.view,this,dc.footer1,true);
_b3.view.renderFooter.call(_b3.view,this,dc.footer2,false);
if(_b3.view.onAfterRender){
_b3.view.onAfterRender.call(_b3.view,this);
}
$(this).treegrid("fixRowHeight");
}
});
},getData:function(jq){
return $.data(jq[0],"treegrid").data;
},getFooterRows:function(jq){
return $.data(jq[0],"treegrid").footer;
},getRoot:function(jq){
return _47(jq[0]);
},getRoots:function(jq){
return _4a(jq[0]);
},getParent:function(jq,id){
return _4c(jq[0],id);
},getChildren:function(jq,id){
return _1b(jq[0],id);
},getLevel:function(jq,id){
return _59(jq[0],id);
},find:function(jq,id){
return _37(jq[0],id);
},isLeaf:function(jq,id){
var _b4=$.data(jq[0],"treegrid").options;
var tr=_b4.finder.getTr(jq[0],id);
var hit=tr.find("span.tree-hit");
return hit.length==0;
},select:function(jq,id){
return jq.each(function(){
$(this).datagrid("selectRow",id);
});
},unselect:function(jq,id){
return jq.each(function(){
$(this).datagrid("unselectRow",id);
});
},collapse:function(jq,id){
return jq.each(function(){
_64(this,id);
});
},expand:function(jq,id){
return jq.each(function(){
_68(this,id);
});
},toggle:function(jq,id){
return jq.each(function(){
_26(this,id);
});
},collapseAll:function(jq,id){
return jq.each(function(){
_72(this,id);
});
},expandAll:function(jq,id){
return jq.each(function(){
_77(this,id);
});
},expandTo:function(jq,id){
return jq.each(function(){
_7c(this,id);
});
},append:function(jq,_b5){
return jq.each(function(){
_80(this,_b5);
});
},insert:function(jq,_b6){
return jq.each(function(){
_86(this,_b6);
});
},remove:function(jq,id){
return jq.each(function(){
_92(this,id);
});
},pop:function(jq,id){
var row=jq.treegrid("find",id);
jq.treegrid("remove",id);
return row;
},refresh:function(jq,id){
return jq.each(function(){
var _b7=$.data(this,"treegrid").options;
_b7.view.refreshRow.call(_b7.view,this,id);
});
},update:function(jq,_b8){
return jq.each(function(){
var _b9=$.data(this,"treegrid").options;
_b9.view.updateRow.call(_b9.view,this,_b8.id,_b8.row);
});
},beginEdit:function(jq,id){
return jq.each(function(){
$(this).datagrid("beginEdit",id);
$(this).treegrid("fixRowHeight",id);
});
},endEdit:function(jq,id){
return jq.each(function(){
$(this).datagrid("endEdit",id);
});
},cancelEdit:function(jq,id){
return jq.each(function(){
$(this).datagrid("cancelEdit",id);
});
},showLines:function(jq){
return jq.each(function(){
_96(this);
});
}};
$.fn.treegrid.parseOptions=function(_ba){
return $.extend({},$.fn.datagrid.parseOptions(_ba),$.parser.parseOptions(_ba,["treeField",{animate:"boolean"}]));
};
var _bb=$.extend({},$.fn.datagrid.defaults.view,{render:function(_bc,_bd,_be){
var _bf=$.data(_bc,"treegrid").options;
var _c0=$(_bc).datagrid("getColumnFields",_be);
var _c1=$.data(_bc,"datagrid").rowIdPrefix;
if(_be){
if(!(_bf.rownumbers||(_bf.frozenColumns&&_bf.frozenColumns.length))){
return;
}
}
var _c2=this;
if(this.treeNodes&&this.treeNodes.length){
var _c3=_c4(_be,this.treeLevel,this.treeNodes);
$(_bd).append(_c3.join(""));
}
function _c4(_c5,_c6,_c7){
var _c8=$(_bc).treegrid("getParent",_c7[0][_bf.idField]);
var _c9=(_c8?_c8.children.length:$(_bc).treegrid("getRoots").length)-_c7.length;
var _ca=["<table class=\"datagrid-btable\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tbody>"];
for(var i=0;i<_c7.length;i++){
var row=_c7[i];
if(row.state!="open"&&row.state!="closed"){
row.state="open";
}
var css=_bf.rowStyler?_bf.rowStyler.call(_bc,row):"";
var _cb="";
var _cc="";
if(typeof css=="string"){
_cc=css;
}else{
if(css){
_cb=css["class"]||"";
_cc=css["style"]||"";
}
}
var cls="class=\"datagrid-row "+(_c9++%2&&_bf.striped?"datagrid-row-alt ":" ")+_cb+"\"";
var _cd=_cc?"style=\""+_cc+"\"":"";
var _ce=_c1+"-"+(_c5?1:2)+"-"+row[_bf.idField];
_ca.push("<tr id=\""+_ce+"\" node-id=\""+row[_bf.idField]+"\" "+cls+" "+_cd+">");
_ca=_ca.concat(_c2.renderRow.call(_c2,_bc,_c0,_c5,_c6,row));
_ca.push("</tr>");
if(row.children&&row.children.length){
var tt=_c4(_c5,_c6+1,row.children);
var v=row.state=="closed"?"none":"block";
_ca.push("<tr class=\"treegrid-tr-tree\"><td style=\"border:0px\" colspan="+(_c0.length+(_bf.rownumbers?1:0))+"><div style=\"display:"+v+"\">");
_ca=_ca.concat(tt);
_ca.push("</div></td></tr>");
}
}
_ca.push("</tbody></table>");
return _ca;
};
},renderFooter:function(_cf,_d0,_d1){
var _d2=$.data(_cf,"treegrid").options;
var _d3=$.data(_cf,"treegrid").footer||[];
var _d4=$(_cf).datagrid("getColumnFields",_d1);
var _d5=["<table class=\"datagrid-ftable\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"><tbody>"];
for(var i=0;i<_d3.length;i++){
var row=_d3[i];
row[_d2.idField]=row[_d2.idField]||("foot-row-id"+i);
_d5.push("<tr class=\"datagrid-row\" node-id=\""+row[_d2.idField]+"\">");
_d5.push(this.renderRow.call(this,_cf,_d4,_d1,0,row));
_d5.push("</tr>");
}
_d5.push("</tbody></table>");
$(_d0).html(_d5.join(""));
},renderRow:function(_d6,_d7,_d8,_d9,row){
var _da=$.data(_d6,"treegrid").options;
var cc=[];
if(_d8&&_da.rownumbers){
cc.push("<td class=\"datagrid-td-rownumber\"><div class=\"datagrid-cell-rownumber\">0</div></td>");
}
for(var i=0;i<_d7.length;i++){
var _db=_d7[i];
var col=$(_d6).datagrid("getColumnOption",_db);
if(col){
var css=col.styler?(col.styler(row[_db],row)||""):"";
var _dc="";
var _dd="";
if(typeof css=="string"){
_dd=css;
}else{
if(cc){
_dc=css["class"]||"";
_dd=css["style"]||"";
}
}
var cls=_dc?"class=\""+_dc+"\"":"";
var _de=col.hidden?"style=\"display:none;"+_dd+"\"":(_dd?"style=\""+_dd+"\"":"");
cc.push("<td field=\""+_db+"\" "+cls+" "+_de+">");
var _de="";
if(!col.checkbox){
if(col.align){
_de+="text-align:"+col.align+";";
}
if(!_da.nowrap){
_de+="white-space:normal;height:auto;";
}else{
if(_da.autoRowHeight){
_de+="height:auto;";
}
}
}
cc.push("<div style=\""+_de+"\" ");
if(col.checkbox){
cc.push("class=\"datagrid-cell-check ");
}else{
cc.push("class=\"datagrid-cell "+col.cellClass);
}
cc.push("\">");
if(col.checkbox){
if(row.checked){
cc.push("<input type=\"checkbox\" checked=\"checked\"");
}else{
cc.push("<input type=\"checkbox\"");
}
cc.push(" name=\""+_db+"\" value=\""+(row[_db]!=undefined?row[_db]:"")+"\">");
}else{
var val=null;
if(col.formatter){
val=col.formatter(row[_db],row);
}else{
val=row[_db];
}
if(_db==_da.treeField){
for(var j=0;j<_d9;j++){
cc.push("<span class=\"tree-indent\"></span>");
}
if(row.state=="closed"){
cc.push("<span class=\"tree-hit tree-collapsed\"></span>");
cc.push("<span class=\"tree-icon tree-folder "+(row.iconCls?row.iconCls:"")+"\"></span>");
}else{
if(row.children&&row.children.length){
cc.push("<span class=\"tree-hit tree-expanded\"></span>");
cc.push("<span class=\"tree-icon tree-folder tree-folder-open "+(row.iconCls?row.iconCls:"")+"\"></span>");
}else{
cc.push("<span class=\"tree-indent\"></span>");
cc.push("<span class=\"tree-icon tree-file "+(row.iconCls?row.iconCls:"")+"\"></span>");
}
}
cc.push("<span class=\"tree-title\">"+val+"</span>");
}else{
cc.push(val);
}
}
cc.push("</div>");
cc.push("</td>");
}
}
return cc.join("");
},refreshRow:function(_df,id){
this.updateRow.call(this,_df,id,{});
},updateRow:function(_e0,id,row){
var _e1=$.data(_e0,"treegrid").options;
var _e2=$(_e0).treegrid("find",id);
$.extend(_e2,row);
var _e3=$(_e0).treegrid("getLevel",id)-1;
var _e4=_e1.rowStyler?_e1.rowStyler.call(_e0,_e2):"";
var _e5=$.data(_e0,"datagrid").rowIdPrefix;
var _e6=_e2[_e1.idField];
function _e7(_e8){
var _e9=$(_e0).treegrid("getColumnFields",_e8);
var tr=_e1.finder.getTr(_e0,id,"body",(_e8?1:2));
var _ea=tr.find("div.datagrid-cell-rownumber").html();
var _eb=tr.find("div.datagrid-cell-check input[type=checkbox]").is(":checked");
tr.html(this.renderRow(_e0,_e9,_e8,_e3,_e2));
tr.attr("style",_e4||"");
tr.find("div.datagrid-cell-rownumber").html(_ea);
if(_eb){
tr.find("div.datagrid-cell-check input[type=checkbox]")._propAttr("checked",true);
}
if(_e6!=id){
tr.attr("id",_e5+"-"+(_e8?1:2)+"-"+_e6);
tr.attr("node-id",_e6);
}
};
_e7.call(this,true);
_e7.call(this,false);
$(_e0).treegrid("fixRowHeight",id);
},deleteRow:function(_ec,id){
var _ed=$.data(_ec,"treegrid").options;
var tr=_ed.finder.getTr(_ec,id);
tr.next("tr.treegrid-tr-tree").remove();
tr.remove();
var _ee=del(id);
if(_ee){
if(_ee.children.length==0){
tr=_ed.finder.getTr(_ec,_ee[_ed.idField]);
tr.next("tr.treegrid-tr-tree").remove();
var _ef=tr.children("td[field=\""+_ed.treeField+"\"]").children("div.datagrid-cell");
_ef.find(".tree-icon").removeClass("tree-folder").addClass("tree-file");
_ef.find(".tree-hit").remove();
$("<span class=\"tree-indent\"></span>").prependTo(_ef);
}
}
function del(id){
var cc;
var _f0=$(_ec).treegrid("getParent",id);
if(_f0){
cc=_f0.children;
}else{
cc=$(_ec).treegrid("getData");
}
for(var i=0;i<cc.length;i++){
if(cc[i][_ed.idField]==id){
cc.splice(i,1);
break;
}
}
return _f0;
};
},onBeforeRender:function(_f1,_f2,_f3){
if($.isArray(_f2)){
_f3={total:_f2.length,rows:_f2};
_f2=null;
}
if(!_f3){
return false;
}
var _f4=$.data(_f1,"treegrid");
var _f5=_f4.options;
if(_f3.length==undefined){
if(_f3.footer){
_f4.footer=_f3.footer;
}
if(_f3.total){
_f4.total=_f3.total;
}
_f3=this.transfer(_f1,_f2,_f3.rows);
}else{
function _f6(_f7,_f8){
for(var i=0;i<_f7.length;i++){
var row=_f7[i];
row._parentId=_f8;
if(row.children&&row.children.length){
_f6(row.children,row[_f5.idField]);
}
}
};
_f6(_f3,_f2);
}
var _f9=_37(_f1,_f2);
if(_f9){
if(_f9.children){
_f9.children=_f9.children.concat(_f3);
}else{
_f9.children=_f3;
}
}else{
_f4.data=_f4.data.concat(_f3);
}
this.sort(_f1,_f3);
this.treeNodes=_f3;
this.treeLevel=$(_f1).treegrid("getLevel",_f2);
},sort:function(_fa,_fb){
var _fc=$.data(_fa,"treegrid").options;
if(!_fc.remoteSort&&_fc.sortName){
var _fd=_fc.sortName.split(",");
var _fe=_fc.sortOrder.split(",");
_ff(_fb);
}
function _ff(rows){
rows.sort(function(r1,r2){
var r=0;
for(var i=0;i<_fd.length;i++){
var sn=_fd[i];
var so=_fe[i];
var col=$(_fa).treegrid("getColumnOption",sn);
var _100=col.sorter||function(a,b){
return a==b?0:(a>b?1:-1);
};
r=_100(r1[sn],r2[sn])*(so=="asc"?1:-1);
if(r!=0){
return r;
}
}
return r;
});
for(var i=0;i<rows.length;i++){
var _101=rows[i].children;
if(_101&&_101.length){
_ff(_101);
}
}
};
},transfer:function(_102,_103,data){
var opts=$.data(_102,"treegrid").options;
var rows=[];
for(var i=0;i<data.length;i++){
rows.push(data[i]);
}
var _104=[];
for(var i=0;i<rows.length;i++){
var row=rows[i];
if(!_103){
if(!row._parentId){
_104.push(row);
rows.splice(i,1);
i--;
}
}else{
if(row._parentId==_103){
_104.push(row);
rows.splice(i,1);
i--;
}
}
}
var toDo=[];
for(var i=0;i<_104.length;i++){
toDo.push(_104[i]);
}
while(toDo.length){
var node=toDo.shift();
for(var i=0;i<rows.length;i++){
var row=rows[i];
if(row._parentId==node[opts.idField]){
if(node.children){
node.children.push(row);
}else{
node.children=[row];
}
toDo.push(row);
rows.splice(i,1);
i--;
}
}
}
return _104;
}});
$.fn.treegrid.defaults=$.extend({},$.fn.datagrid.defaults,{treeField:null,lines:false,animate:false,singleSelect:true,view:_bb,rowEvents:$.extend({},$.fn.datagrid.defaults.rowEvents,{mouseover:_22(true),mouseout:_22(false),click:_24}),loader:function(_105,_106,_107){
var opts=$(this).treegrid("options");
if(!opts.url){
return false;
}
$.ajax({type:opts.method,url:opts.url,data:_105,dataType:"json",success:function(data){
_106(data);
},error:function(){
_107.apply(this,arguments);
}});
},loadFilter:function(data,_108){
return data;
},finder:{getTr:function(_109,id,type,_10a){
type=type||"body";
_10a=_10a||0;
var dc=$.data(_109,"datagrid").dc;
if(_10a==0){
var opts=$.data(_109,"treegrid").options;
var tr1=opts.finder.getTr(_109,id,type,1);
var tr2=opts.finder.getTr(_109,id,type,2);
return tr1.add(tr2);
}else{
if(type=="body"){
var tr=$("#"+$.data(_109,"datagrid").rowIdPrefix+"-"+_10a+"-"+id);
if(!tr.length){
tr=(_10a==1?dc.body1:dc.body2).find("tr[node-id=\""+id+"\"]");
}
return tr;
}else{
if(type=="footer"){
return (_10a==1?dc.footer1:dc.footer2).find("tr[node-id=\""+id+"\"]");
}else{
if(type=="selected"){
return (_10a==1?dc.body1:dc.body2).find("tr.datagrid-row-selected");
}else{
if(type=="highlight"){
return (_10a==1?dc.body1:dc.body2).find("tr.datagrid-row-over");
}else{
if(type=="checked"){
return (_10a==1?dc.body1:dc.body2).find("tr.datagrid-row-checked");
}else{
if(type=="last"){
return (_10a==1?dc.body1:dc.body2).find("tr:last[node-id]");
}else{
if(type=="allbody"){
return (_10a==1?dc.body1:dc.body2).find("tr[node-id]");
}else{
if(type=="allfooter"){
return (_10a==1?dc.footer1:dc.footer2).find("tr[node-id]");
}
}
}
}
}
}
}
}
}
},getRow:function(_10b,p){
var id=(typeof p=="object")?p.attr("node-id"):p;
return $(_10b).treegrid("find",id);
},getRows:function(_10c){
return $(_10c).treegrid("getChildren");
}},onBeforeLoad:function(row,_10d){
},onLoadSuccess:function(row,data){
},onLoadError:function(){
},onBeforeCollapse:function(row){
},onCollapse:function(row){
},onBeforeExpand:function(row){
},onExpand:function(row){
},onClickRow:function(row){
},onDblClickRow:function(row){
},onClickCell:function(_10e,row){
},onDblClickCell:function(_10f,row){
},onContextMenu:function(e,row){
},onBeforeEdit:function(row){
},onAfterEdit:function(row,_110){
},onCancelEdit:function(row){
}});
})(jQuery);