123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119 |
- /**
- * 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);
|