(function($){var settings={},roots={},caches={},_consts={className:{BUTTON:"button",LEVEL:"level",ICO_LOADING:"ico_loading",SWITCH:"switch",NAME:"node_name"},event:{NODECREATED:"ztree_nodeCreated",CLICK:"ztree_click",EXPAND:"ztree_expand",COLLAPSE:"ztree_collapse",ASYNC_SUCCESS:"ztree_async_success",ASYNC_ERROR:"ztree_async_error",REMOVE:"ztree_remove",SELECTED:"ztree_selected",UNSELECTED:"ztree_unselected"},id:{A:"_a",ICON:"_ico",SPAN:"_span",SWITCH:"_switch",UL:"_ul"},line:{ROOT:"root",ROOTS:"roots",CENTER:"center",BOTTOM:"bottom",NOLINE:"noline",LINE:"line"},folder:{OPEN:"open",CLOSE:"close",DOCU:"docu"},node:{CURSELECTED:"curSelectedNode"}},_setting={treeId:"",treeObj:null,view:{addDiyDom:null,autoCancelSelected:true,dblClickExpand:true,expandSpeed:"fast",fontCss:{},nameIsHTML:false,selectedMulti:true,showIcon:true,showLine:true,showTitle:true,txtSelectedEnable:false},data:{key:{children:"children",name:"name",title:"",url:"url",icon:"icon"},simpleData:{enable:false,idKey:"id",pIdKey:"pId",rootPId:null},keep:{parent:false,leaf:false}},async:{enable:false,contentType:"application/x-www-form-urlencoded",type:"post",dataType:"text",url:"",autoParam:[],otherParam:[],dataFilter:null},callback:{beforeAsync:null,beforeClick:null,beforeDblClick:null,beforeRightClick:null,beforeMouseDown:null,beforeMouseUp:null,beforeExpand:null,beforeCollapse:null,beforeRemove:null,onAsyncError:null,onAsyncSuccess:null,onNodeCreated:null,onClick:null,onDblClick:null,onRightClick:null,onMouseDown:null,onMouseUp:null,onExpand:null,onCollapse:null,onRemove:null}},_initRoot=function(setting){var r=data.getRoot(setting);if(!r){r={};data.setRoot(setting,r)}r[setting.data.key.children]=[];r.expandTriggerFlag=false;r.curSelectedList=[];r.noSelection=true;r.createdNodes=[];r.zId=0;r._ver=(new Date()).getTime()},_initCache=function(setting){var c=data.getCache(setting);if(!c){c={};data.setCache(setting,c)}c.nodes=[];c.doms=[]},_bindEvent=function(setting){var o=setting.treeObj,c=consts.event;o.bind(c.NODECREATED,function(event,treeId,node){tools.apply(setting.callback.onNodeCreated,[event,treeId,node])});o.bind(c.CLICK,function(event,srcEvent,treeId,node,clickFlag){tools.apply(setting.callback.onClick,[srcEvent,treeId,node,clickFlag])});o.bind(c.EXPAND,function(event,treeId,node){tools.apply(setting.callback.onExpand,[event,treeId,node])});o.bind(c.COLLAPSE,function(event,treeId,node){tools.apply(setting.callback.onCollapse,[event,treeId,node])});o.bind(c.ASYNC_SUCCESS,function(event,treeId,node,msg){tools.apply(setting.callback.onAsyncSuccess,[event,treeId,node,msg])});o.bind(c.ASYNC_ERROR,function(event,treeId,node,XMLHttpRequest,textStatus,errorThrown){tools.apply(setting.callback.onAsyncError,[event,treeId,node,XMLHttpRequest,textStatus,errorThrown])});o.bind(c.REMOVE,function(event,treeId,treeNode){tools.apply(setting.callback.onRemove,[event,treeId,treeNode])});o.bind(c.SELECTED,function(event,treeId,node){tools.apply(setting.callback.onSelected,[treeId,node])});o.bind(c.UNSELECTED,function(event,treeId,node){tools.apply(setting.callback.onUnSelected,[treeId,node])})},_unbindEvent=function(setting){var o=setting.treeObj,c=consts.event;o.unbind(c.NODECREATED).unbind(c.CLICK).unbind(c.EXPAND).unbind(c.COLLAPSE).unbind(c.ASYNC_SUCCESS).unbind(c.ASYNC_ERROR).unbind(c.REMOVE).unbind(c.SELECTED).unbind(c.UNSELECTED)},_eventProxy=function(event){var target=event.target,setting=data.getSetting(event.data.treeId),tId="",node=null,nodeEventType="",treeEventType="",nodeEventCallback=null,treeEventCallback=null,tmp=null;if(tools.eqs(event.type,"mousedown")){treeEventType="mousedown"}else{if(tools.eqs(event.type,"mouseup")){treeEventType="mouseup"}else{if(tools.eqs(event.type,"contextmenu")){treeEventType="contextmenu"}else{if(tools.eqs(event.type,"click")){if(tools.eqs(target.tagName,"span")&&target.getAttribute("treeNode"+consts.id.SWITCH)!==null){tId=tools.getNodeMainDom(target).id;nodeEventType="switchNode"}else{tmp=tools.getMDom(setting,target,[{tagName:"a",attrName:"treeNode"+consts.id.A}]);if(tmp){tId=tools.getNodeMainDom(tmp).id;nodeEventType="clickNode"}}}else{if(tools.eqs(event.type,"dblclick")){treeEventType="dblclick";tmp=tools.getMDom(setting,target,[{tagName:"a",attrName:"treeNode"+consts.id.A}]);if(tmp){tId=tools.getNodeMainDom(tmp).id;nodeEventType="switchNode"}}}}}}if(treeEventType.length>0&&tId.length==0){tmp=tools.getMDom(setting,target,[{tagName:"a",attrName:"treeNode"+consts.id.A}]);if(tmp){tId=tools.getNodeMainDom(tmp).id}}if(tId.length>0){node=data.getNodeCache(setting,tId);switch(nodeEventType){case"switchNode":if(!node.isParent){nodeEventType=""}else{if(tools.eqs(event.type,"click")||(tools.eqs(event.type,"dblclick")&&tools.apply(setting.view.dblClickExpand,[setting.treeId,node],setting.view.dblClickExpand))){nodeEventCallback=handler.onSwitchNode}else{nodeEventType=""}}break;case"clickNode":nodeEventCallback=handler.onClickNode;break}}switch(treeEventType){case"mousedown":treeEventCallback=handler.onZTreeMousedown;break; case"mouseup":treeEventCallback=handler.onZTreeMouseup;break;case"dblclick":treeEventCallback=handler.onZTreeDblclick;break;case"contextmenu":treeEventCallback=handler.onZTreeContextmenu;break}var proxyResult={stop:false,node:node,nodeEventType:nodeEventType,nodeEventCallback:nodeEventCallback,treeEventType:treeEventType,treeEventCallback:treeEventCallback};return proxyResult},_initNode=function(setting,level,n,parentNode,isFirstNode,isLastNode,openFlag){if(!n){return}var r=data.getRoot(setting),childKey=setting.data.key.children;n.level=level;n.tId=setting.treeId+"_"+(++r.zId);n.parentTId=parentNode?parentNode.tId:null;n.open=(typeof n.open=="string")?tools.eqs(n.open,"true"):!!n.open;if(n[childKey]&&n[childKey].length>0){n.isParent=true;n.zAsync=true}else{n.isParent=(typeof n.isParent=="string")?tools.eqs(n.isParent,"true"):!!n.isParent;n.open=(n.isParent&&!setting.async.enable)?n.open:false;n.zAsync=!n.isParent}n.isFirstNode=isFirstNode;n.isLastNode=isLastNode;n.getParentNode=function(){return data.getNodeCache(setting,n.parentTId)};n.getPreNode=function(){return data.getPreNode(setting,n)};n.getNextNode=function(){return data.getNextNode(setting,n)};n.getIndex=function(){return data.getNodeIndex(setting,n)};n.getPath=function(){return data.getNodePath(setting,n)};n.isAjaxing=false;data.fixPIdKeyValue(setting,n)},_init={bind:[_bindEvent],unbind:[_unbindEvent],caches:[_initCache],nodes:[_initNode],proxys:[_eventProxy],roots:[_initRoot],beforeA:[],afterA:[],innerBeforeA:[],innerAfterA:[],zTreeTools:[]},data={addNodeCache:function(setting,node){data.getCache(setting).nodes[data.getNodeCacheId(node.tId)]=node},getNodeCacheId:function(tId){return tId.substring(tId.lastIndexOf("_")+1)},addAfterA:function(afterA){_init.afterA.push(afterA)},addBeforeA:function(beforeA){_init.beforeA.push(beforeA)},addInnerAfterA:function(innerAfterA){_init.innerAfterA.push(innerAfterA)},addInnerBeforeA:function(innerBeforeA){_init.innerBeforeA.push(innerBeforeA)},addInitBind:function(bindEvent){_init.bind.push(bindEvent)},addInitUnBind:function(unbindEvent){_init.unbind.push(unbindEvent)},addInitCache:function(initCache){_init.caches.push(initCache)},addInitNode:function(initNode){_init.nodes.push(initNode)},addInitProxy:function(initProxy,isFirst){if(!!isFirst){_init.proxys.splice(0,0,initProxy)}else{_init.proxys.push(initProxy)}},addInitRoot:function(initRoot){_init.roots.push(initRoot)},addNodesData:function(setting,parentNode,index,nodes){var childKey=setting.data.key.children,params;if(!parentNode[childKey]){parentNode[childKey]=[];index=-1}else{if(index>=parentNode[childKey].length){index=-1}}if(parentNode[childKey].length>0&&index===0){parentNode[childKey][0].isFirstNode=false;view.setNodeLineIcos(setting,parentNode[childKey][0])}else{if(parentNode[childKey].length>0&&index<0){parentNode[childKey][parentNode[childKey].length-1].isLastNode=false;view.setNodeLineIcos(setting,parentNode[childKey][parentNode[childKey].length-1])}}parentNode.isParent=true;if(index<0){parentNode[childKey]=parentNode[childKey].concat(nodes)}else{params=[index,0].concat(nodes);parentNode[childKey].splice.apply(parentNode[childKey],params)}},addSelectedNode:function(setting,node){var root=data.getRoot(setting);if(!data.isSelectedNode(setting,node)){root.curSelectedList.push(node)}},addCreatedNode:function(setting,node){if(!!setting.callback.onNodeCreated||!!setting.view.addDiyDom){var root=data.getRoot(setting);root.createdNodes.push(node)}},addZTreeTools:function(zTreeTools){_init.zTreeTools.push(zTreeTools)},exSetting:function(s){$.extend(true,_setting,s)},fixPIdKeyValue:function(setting,node){if(setting.data.simpleData.enable){node[setting.data.simpleData.pIdKey]=node.parentTId?node.getParentNode()[setting.data.simpleData.idKey]:setting.data.simpleData.rootPId}},getAfterA:function(setting,node,array){for(var i=0,j=_init.afterA.length;i-1){result.push(nodes[i])}result=result.concat(data.getNodesByParamFuzzy(setting,nodes[i][childKey],key,value))}return result},getNodesByFilter:function(setting,nodes,filter,isSingle,invokeParam){if(!nodes){return(isSingle?null:[])}var childKey=setting.data.key.children,result=isSingle?null:[];for(var i=0,l=nodes.length;i0)))},clone:function(obj){if(obj===null){return null}var o=tools.isArray(obj)?[]:{};for(var i in obj){o[i]=(obj[i] instanceof Date)?new Date(obj[i].getTime()):(typeof obj[i]==="object"?tools.clone(obj[i]):obj[i])}return o},eqs:function(str1,str2){return str1.toLowerCase()===str2.toLowerCase()},isArray:function(arr){return Object.prototype.toString.apply(arr)==="[object Array]"},$:function(node,exp,setting){if(!!exp&&typeof exp!="string"){setting=exp;exp=""}if(typeof node=="string"){return $(node,setting?setting.treeObj.get(0).ownerDocument:null)}else{return $("#"+node.tId+exp,setting?setting.treeObj:null)}},getMDom:function(setting,curDom,targetExpr){if(!curDom){return null}while(curDom&&curDom.id!==setting.treeId){for(var i=0,l=targetExpr.length;curDom.tagName&&i0)},uCanDo:function(setting,e){return true}},view={addNodes:function(setting,parentNode,index,newNodes,isSilent){if(setting.data.keep.leaf&&parentNode&&!parentNode.isParent){return}if(!tools.isArray(newNodes)){newNodes=[newNodes]}if(setting.data.simpleData.enable){newNodes=data.transformTozTreeFormat(setting,newNodes)}if(parentNode){var target_switchObj=$$(parentNode,consts.id.SWITCH,setting),target_icoObj=$$(parentNode,consts.id.ICON,setting),target_ulObj=$$(parentNode,consts.id.UL,setting);if(!parentNode.open){view.replaceSwitchClass(parentNode,target_switchObj,consts.folder.CLOSE);view.replaceIcoClass(parentNode,target_icoObj,consts.folder.CLOSE);parentNode.open=false;target_ulObj.css({"display":"none"})}data.addNodesData(setting,parentNode,index,newNodes);view.createNodes(setting,parentNode.level+1,newNodes,parentNode,index);if(!isSilent){view.expandCollapseParentNode(setting,parentNode,true)}}else{data.addNodesData(setting,data.getRoot(setting),index,newNodes);view.createNodes(setting,0,newNodes,null,index)}},appendNodes:function(setting,level,nodes,parentNode,index,initFlag,openFlag){if(!nodes){return[]}var html=[],childKey=setting.data.key.children;var tmpPNode=(parentNode)?parentNode:data.getRoot(setting),tmpPChild=tmpPNode[childKey],isFirstNode,isLastNode;if(!tmpPChild||index>=tmpPChild.length){index=-1}for(var i=0,l=nodes.length;i0){childHtml=view.appendNodes(setting,level+1,node[childKey],node,-1,initFlag,openFlag&&node.open)}if(openFlag){view.makeDOMNodeMainBefore(html,setting,node);view.makeDOMNodeLine(html,setting,node);data.getBeforeA(setting,node,html);view.makeDOMNodeNameBefore(html,setting,node);data.getInnerBeforeA(setting,node,html);view.makeDOMNodeIcon(html,setting,node);data.getInnerAfterA(setting,node,html);view.makeDOMNodeNameAfter(html,setting,node);data.getAfterA(setting,node,html);if(node.isParent&&node.open){view.makeUlHtml(setting,node,html,childHtml.join(""))}view.makeDOMNodeMainAfter(html,setting,node);data.addCreatedNode(setting,node)}}return html},appendParentULDom:function(setting,node){var html=[],nObj=$$(node,setting);if(!nObj.get(0)&&!!node.parentTId){view.appendParentULDom(setting,node.getParentNode());nObj=$$(node,setting)}var ulObj=$$(node,consts.id.UL,setting);if(ulObj.get(0)){ulObj.remove()}var childKey=setting.data.key.children,childHtml=view.appendNodes(setting,node.level+1,node[childKey],node,-1,false,true);view.makeUlHtml(setting,node,html,childHtml.join(""));nObj.append(html.join(""))},asyncNode:function(setting,node,isSilent,callback){var i,l;if(node&&!node.isParent){tools.apply(callback);return false}else{if(node&&node.isAjaxing){return false}else{if(tools.apply(setting.callback.beforeAsync,[setting.treeId,node],true)==false){tools.apply(callback);return false}}}if(node){node.isAjaxing=true;var icoObj=$$(node,consts.id.ICON,setting);icoObj.attr({"style":"","class":consts.className.BUTTON+" "+consts.className.ICO_LOADING})}var tmpParam={};for(i=0,l=setting.async.autoParam.length;node&&i1){spKey=pKey[1];pKey=pKey[0]}tmpParam[spKey]=node[pKey]}if(tools.isArray(setting.async.otherParam)){for(i=0,l=setting.async.otherParam.length;i=0;i--){n=list[i];if(node===n||(!node&&(!excludeNode||excludeNode!==n))){$$(n,consts.id.A,setting).removeClass(consts.node.CURSELECTED);if(node){data.removeSelectedNode(setting,node);break}else{list.splice(i,1);setting.treeObj.trigger(consts.event.UNSELECTED,[setting.treeId,n])}}}},createNodeCallback:function(setting){if(!!setting.callback.onNodeCreated||!!setting.view.addDiyDom){var root=data.getRoot(setting);while(root.createdNodes.length>0){var node=root.createdNodes.shift();tools.apply(setting.view.addDiyDom,[setting.treeId,node]);if(!!setting.callback.onNodeCreated){setting.treeObj.trigger(consts.event.NODECREATED,[setting.treeId,node])}}}},createNodes:function(setting,level,nodes,parentNode,index){if(!nodes||nodes.length==0){return}var root=data.getRoot(setting),childKey=setting.data.key.children,openFlag=!parentNode||parentNode.open||!!$$(parentNode[childKey][0],setting).get(0);root.createdNodes=[];var zTreeHtml=view.appendNodes(setting,level,nodes,parentNode,index,true,openFlag),parentObj,nextObj;if(!parentNode){parentObj=setting.treeObj}else{var ulObj=$$(parentNode,consts.id.UL,setting);if(ulObj.get(0)){parentObj=ulObj}}if(parentObj){if(index>=0){nextObj=parentObj.children()[index]}if(index>=0&&nextObj){$(nextObj).before(zTreeHtml.join(""))}else{parentObj.append(zTreeHtml.join(""))}}view.createNodeCallback(setting)},destroy:function(setting){if(!setting){return}data.initCache(setting);data.initRoot(setting);event.unbindTree(setting);event.unbindEvent(setting);setting.treeObj.empty();delete settings[setting.treeId]},expandCollapseNode:function(setting,node,expandFlag,animateFlag,callback){var root=data.getRoot(setting),childKey=setting.data.key.children;var tmpCb,_callback;if(!node){tools.apply(callback,[]);return}if(root.expandTriggerFlag){_callback=callback;tmpCb=function(){if(_callback){_callback()}if(node.open){setting.treeObj.trigger(consts.event.EXPAND,[setting.treeId,node])}else{setting.treeObj.trigger(consts.event.COLLAPSE,[setting.treeId,node])}};callback=tmpCb;root.expandTriggerFlag=false}if(!node.open&&node.isParent&&((!$$(node,consts.id.UL,setting).get(0))||(node[childKey]&&node[childKey].length>0&&!$$(node[childKey][0],setting).get(0)))){view.appendParentULDom(setting,node);view.createNodeCallback(setting)}if(node.open==expandFlag){tools.apply(callback,[]);return}var ulObj=$$(node,consts.id.UL,setting),switchObj=$$(node,consts.id.SWITCH,setting),icoObj=$$(node,consts.id.ICON,setting);if(node.isParent){node.open=!node.open;if(node.iconOpen&&node.iconClose){icoObj.attr("style",view.makeNodeIcoStyle(setting,node))}if(node.open){view.replaceSwitchClass(node,switchObj,consts.folder.OPEN);view.replaceIcoClass(node,icoObj,consts.folder.OPEN);if(animateFlag==false||setting.view.expandSpeed==""){ulObj.show();tools.apply(callback,[])}else{if(node[childKey]&&node[childKey].length>0){ulObj.slideDown(setting.view.expandSpeed,callback)}else{ulObj.show();tools.apply(callback,[])}}}else{view.replaceSwitchClass(node,switchObj,consts.folder.CLOSE);view.replaceIcoClass(node,icoObj,consts.folder.CLOSE);if(animateFlag==false||setting.view.expandSpeed==""||!(node[childKey]&&node[childKey].length>0)){ulObj.hide();tools.apply(callback,[])}else{ulObj.slideUp(setting.view.expandSpeed,callback)}}}else{tools.apply(callback,[])}},expandCollapseParentNode:function(setting,node,expandFlag,animateFlag,callback){if(!node){return}if(!node.parentTId){view.expandCollapseNode(setting,node,expandFlag,animateFlag,callback);return}else{view.expandCollapseNode(setting,node,expandFlag,animateFlag)}if(node.parentTId){view.expandCollapseParentNode(setting,node.getParentNode(),expandFlag,animateFlag,callback)}},expandCollapseSonNode:function(setting,node,expandFlag,animateFlag,callback){var root=data.getRoot(setting),childKey=setting.data.key.children,treeNodes=(node)?node[childKey]:root[childKey],selfAnimateSign=(node)?false:animateFlag,expandTriggerFlag=data.getRoot(setting).expandTriggerFlag;data.getRoot(setting).expandTriggerFlag=false;if(treeNodes){for(var i=0,l=treeNodes.length;i=0;i--){if(node===list[i]){return true}}return false},makeDOMNodeIcon:function(html,setting,node){var nameStr=data.getNodeName(setting,node),name=setting.view.nameIsHTML?nameStr:nameStr.replace(/&/g,"&").replace(//g,">");html.push("",name,"") },makeDOMNodeLine:function(html,setting,node){html.push("")},makeDOMNodeMainAfter:function(html,setting,node){html.push("")},makeDOMNodeMainBefore:function(html,setting,node){html.push("
  • ")},makeDOMNodeNameAfter:function(html,setting,node){html.push("")},makeDOMNodeNameBefore:function(html,setting,node){var title=data.getNodeTitle(setting,node),url=view.makeNodeUrl(setting,node),fontcss=view.makeNodeFontCss(setting,node),fontStyle=[];for(var f in fontcss){fontStyle.push(f,":",fontcss[f],";")}html.push("0)?"href='"+url+"'":"")," target='",view.makeNodeTarget(node),"' style='",fontStyle.join(""),"'");if(tools.apply(setting.view.showTitle,[setting.treeId,node],setting.view.showTitle)&&title){html.push("title='",title.replace(/'/g,"'").replace(//g,">"),"'")}html.push(">")},makeNodeFontCss:function(setting,node){var fontCss=tools.apply(setting.view.fontCss,[setting.treeId,node],setting.view.fontCss);return(fontCss&&((typeof fontCss)!="function"))?fontCss:{}},makeNodeIcoClass:function(setting,node){var icoCss=["ico"];if(!node.isAjaxing){icoCss[0]=(node.iconSkin?node.iconSkin+"_":"")+icoCss[0];if(node.isParent){icoCss.push(node.open?consts.folder.OPEN:consts.folder.CLOSE)}else{icoCss.push(consts.folder.DOCU)}}return consts.className.BUTTON+" "+icoCss.join("_")},makeNodeIcoStyle:function(setting,node){var icoStyle=[];if(!node.isAjaxing){var icon=(node.isParent&&node.iconOpen&&node.iconClose)?(node.open?node.iconOpen:node.iconClose):node[setting.data.key.icon];if(icon){icoStyle.push("background:url(",icon,") 0 0 no-repeat;")}if(setting.view.showIcon==false||!tools.apply(setting.view.showIcon,[setting.treeId,node],true)){icoStyle.push("width:0px;height:0px;")}}return icoStyle.join("")},makeNodeLineClass:function(setting,node){var lineClass=[];if(setting.view.showLine){if(node.level==0&&node.isFirstNode&&node.isLastNode){lineClass.push(consts.line.ROOT)}else{if(node.level==0&&node.isFirstNode){lineClass.push(consts.line.ROOTS)}else{if(node.isLastNode){lineClass.push(consts.line.BOTTOM)}else{lineClass.push(consts.line.CENTER)}}}}else{lineClass.push(consts.line.NOLINE)}if(node.isParent){lineClass.push(node.open?consts.folder.OPEN:consts.folder.CLOSE)}else{lineClass.push(consts.folder.DOCU)}return view.makeNodeLineClassEx(node)+lineClass.join("_")},makeNodeLineClassEx:function(node){return consts.className.BUTTON+" "+consts.className.LEVEL+node.level+" "+consts.className.SWITCH+" "},makeNodeTarget:function(node){return(node.target||"_blank")},makeNodeUrl:function(setting,node){var urlKey=setting.data.key.url;return node[urlKey]?node[urlKey]:null},makeUlHtml:function(setting,node,html,content){html.push("
      ");html.push(content);html.push("
    ")},makeUlLineClass:function(setting,node){return((setting.view.showLine&&!node.isLastNode)?consts.line.LINE:"")},removeChildNodes:function(setting,node){if(!node){return}var childKey=setting.data.key.children,nodes=node[childKey];if(!nodes){return}for(var i=0,l=nodes.length;i0){parentNode[childKey][0].isFirstNode=true}},setLastNode:function(setting,parentNode){var childKey=setting.data.key.children,childLength=parentNode[childKey].length;if(childLength>0){parentNode[childKey][childLength-1].isLastNode=true}},removeNode:function(setting,node){var root=data.getRoot(setting),childKey=setting.data.key.children,parentNode=(node.parentTId)?node.getParentNode():root;node.isFirstNode=false;node.isLastNode=false;node.getPreNode=function(){return null};node.getNextNode=function(){return null};if(!data.getNodeCache(setting,node.tId)){return}$$(node,setting).remove();data.removeNodeCache(setting,node);data.removeSelectedNode(setting,node); for(var i=0,l=parentNode[childKey].length;i0){var newLast=parentNode[childKey][childLength-1];tmp_ulObj=$$(newLast,consts.id.UL,setting);tmp_switchObj=$$(newLast,consts.id.SWITCH,setting);tmp_icoObj=$$(newLast,consts.id.ICON,setting);if(parentNode==root){if(parentNode[childKey].length==1){view.replaceSwitchClass(newLast,tmp_switchObj,consts.line.ROOT)}else{var tmp_first_switchObj=$$(parentNode[childKey][0],consts.id.SWITCH,setting);view.replaceSwitchClass(parentNode[childKey][0],tmp_first_switchObj,consts.line.ROOTS);view.replaceSwitchClass(newLast,tmp_switchObj,consts.line.BOTTOM)}}else{view.replaceSwitchClass(newLast,tmp_switchObj,consts.line.BOTTOM)}tmp_ulObj.removeClass(consts.line.LINE)}}},replaceIcoClass:function(node,obj,newName){if(!obj||node.isAjaxing){return}var tmpName=obj.attr("class");if(tmpName==undefined){return}var tmpList=tmpName.split("_");switch(newName){case consts.folder.OPEN:case consts.folder.CLOSE:case consts.folder.DOCU:tmpList[tmpList.length-1]=newName;break}obj.attr("class",tmpList.join("_"))},replaceSwitchClass:function(node,obj,newName){if(!obj){return}var tmpName=obj.attr("class");if(tmpName==undefined){return}var tmpList=tmpName.split("_");switch(newName){case consts.line.ROOT:case consts.line.ROOTS:case consts.line.CENTER:case consts.line.BOTTOM:case consts.line.NOLINE:tmpList[0]=view.makeNodeLineClassEx(node)+newName;break;case consts.folder.OPEN:case consts.folder.CLOSE:case consts.folder.DOCU:tmpList[1]=newName;break}obj.attr("class",tmpList.join("_"));if(newName!==consts.folder.DOCU){obj.removeAttr("disabled")}else{obj.attr("disabled","disabled")}},selectNode:function(setting,node,addFlag){if(!addFlag){view.cancelPreSelectedNode(setting,null,node)}$$(node,consts.id.A,setting).addClass(consts.node.CURSELECTED);data.addSelectedNode(setting,node);setting.treeObj.trigger(consts.event.SELECTED,[setting.treeId,node])},setNodeFontCss:function(setting,treeNode){var aObj=$$(treeNode,consts.id.A,setting),fontCss=view.makeNodeFontCss(setting,treeNode);if(fontCss){aObj.css(fontCss)}},setNodeLineIcos:function(setting,node){if(!node){return}var switchObj=$$(node,consts.id.SWITCH,setting),ulObj=$$(node,consts.id.UL,setting),icoObj=$$(node,consts.id.ICON,setting),ulLine=view.makeUlLineClass(setting,node);if(ulLine.length==0){ulObj.removeClass(consts.line.LINE)}else{ulObj.addClass(ulLine)}switchObj.attr("class",view.makeNodeLineClass(setting,node));if(node.isParent){switchObj.removeAttr("disabled")}else{switchObj.attr("disabled","disabled")}icoObj.removeAttr("style");icoObj.attr("style",view.makeNodeIcoStyle(setting,node));icoObj.attr("class",view.makeNodeIcoClass(setting,node))},setNodeName:function(setting,node){var title=data.getNodeTitle(setting,node),nObj=$$(node,consts.id.SPAN,setting);nObj.empty();if(setting.view.nameIsHTML){nObj.html(data.getNodeName(setting,node))}else{nObj.text(data.getNodeName(setting,node))}if(tools.apply(setting.view.showTitle,[setting.treeId,node],setting.view.showTitle)){var aObj=$$(node,consts.id.A,setting);aObj.attr("title",!title?"":title)}},setNodeTarget:function(setting,node){var aObj=$$(node,consts.id.A,setting);aObj.attr("target",view.makeNodeTarget(node))},setNodeUrl:function(setting,node){var aObj=$$(node,consts.id.A,setting),url=view.makeNodeUrl(setting,node);if(url==null||url.length==0){aObj.removeAttr("href")}else{aObj.attr("href",url)}},switchNode:function(setting,node){if(node.open||!tools.canAsync(setting,node)){view.expandCollapseNode(setting,node,!node.open)}else{if(setting.async.enable){if(!view.asyncNode(setting,node)){view.expandCollapseNode(setting,node,!node.open);return}}else{if(node){view.expandCollapseNode(setting,node,!node.open)}}}}};$.fn.zTree={consts:_consts,_z:{tools:tools,view:view,event:event,data:data},getZTreeObj:function(treeId){var o=data.getZTreeTools(treeId);return o?o:null},destroy:function(treeId){if(!!treeId&&treeId.length>0){view.destroy(data.getSetting(treeId))}else{for(var s in settings){view.destroy(settings[s])}}},init:function(obj,zSetting,zNodes){var setting=tools.clone(_setting);$.extend(true,setting,zSetting);setting.treeId=obj.attr("id");setting.treeObj=obj;setting.treeObj.empty();settings[setting.treeId]=setting;if(typeof document.body.style.maxHeight==="undefined"){setting.view.expandSpeed=""}data.initRoot(setting);var root=data.getRoot(setting),childKey=setting.data.key.children; zNodes=zNodes?tools.clone(tools.isArray(zNodes)?zNodes:[zNodes]):[];if(setting.data.simpleData.enable){root[childKey]=data.transformTozTreeFormat(setting,zNodes)}else{root[childKey]=zNodes}data.initCache(setting);event.unbindTree(setting);event.bindTree(setting);event.unbindEvent(setting);event.bindEvent(setting);var zTreeTools={setting:setting,addNodes:function(parentNode,index,newNodes,isSilent){if(!parentNode){parentNode=null}if(parentNode&&!parentNode.isParent&&setting.data.keep.leaf){return null}var i=parseInt(index,10);if(isNaN(i)){isSilent=!!newNodes;newNodes=index;index=-1}else{index=i}if(!newNodes){return null}var xNewNodes=tools.clone(tools.isArray(newNodes)?newNodes:[newNodes]);function addCallback(){view.addNodes(setting,parentNode,index,xNewNodes,(isSilent==true))}if(tools.canAsync(setting,parentNode)){view.asyncNode(setting,parentNode,isSilent,addCallback)}else{addCallback()}return xNewNodes},cancelSelectedNode:function(node){view.cancelPreSelectedNode(setting,node)},destroy:function(){view.destroy(setting)},expandAll:function(expandFlag){expandFlag=!!expandFlag;view.expandCollapseSonNode(setting,null,expandFlag,true);return expandFlag},expandNode:function(node,expandFlag,sonSign,focus,callbackFlag){if(!node||!node.isParent){return null}if(expandFlag!==true&&expandFlag!==false){expandFlag=!node.open}callbackFlag=!!callbackFlag;if(callbackFlag&&expandFlag&&(tools.apply(setting.callback.beforeExpand,[setting.treeId,node],true)==false)){return null}else{if(callbackFlag&&!expandFlag&&(tools.apply(setting.callback.beforeCollapse,[setting.treeId,node],true)==false)){return null}}if(expandFlag&&node.parentTId){view.expandCollapseParentNode(setting,node.getParentNode(),expandFlag,false)}if(expandFlag===node.open&&!sonSign){return null}data.getRoot(setting).expandTriggerFlag=callbackFlag;if(!tools.canAsync(setting,node)&&sonSign){view.expandCollapseSonNode(setting,node,expandFlag,true,showNodeFocus)}else{node.open=!expandFlag;view.switchNode(this.setting,node);showNodeFocus()}return expandFlag;function showNodeFocus(){var a=$$(node,setting).get(0);if(a&&focus!==false){view.scrollIntoView(a)}}},getNodes:function(){return data.getNodes(setting)},getNodeByParam:function(key,value,parentNode){if(!key){return null}return data.getNodeByParam(setting,parentNode?parentNode[setting.data.key.children]:data.getNodes(setting),key,value)},getNodeByTId:function(tId){return data.getNodeCache(setting,tId)},getNodesByParam:function(key,value,parentNode){if(!key){return null}return data.getNodesByParam(setting,parentNode?parentNode[setting.data.key.children]:data.getNodes(setting),key,value)},getNodesByParamFuzzy:function(key,value,parentNode){if(!key){return null}return data.getNodesByParamFuzzy(setting,parentNode?parentNode[setting.data.key.children]:data.getNodes(setting),key,value)},getNodesByFilter:function(filter,isSingle,parentNode,invokeParam){isSingle=!!isSingle;if(!filter||(typeof filter!="function")){return(isSingle?null:[])}return data.getNodesByFilter(setting,parentNode?parentNode[setting.data.key.children]:data.getNodes(setting),filter,isSingle,invokeParam)},getNodeIndex:function(node){if(!node){return null}var childKey=setting.data.key.children,parentNode=(node.parentTId)?node.getParentNode():data.getRoot(setting);for(var i=0,l=parentNode[childKey].length;i0){view.createNodes(setting,0,root[childKey],null,-1)}else{if(setting.async.enable&&setting.async.url&&setting.async.url!==""){view.asyncNode(setting)}}return zTreeTools}};var zt=$.fn.zTree,$$=tools.$,consts=zt.consts})(jQuery);(function(f){var A={event:{CHECK:"ztree_check"},id:{CHECK:"_check"},checkbox:{STYLE:"checkbox",DEFAULT:"chk",DISABLED:"disable",FALSE:"false",TRUE:"true",FULL:"full",PART:"part",FOCUS:"focus"},radio:{STYLE:"radio",TYPE_ALL:"all",TYPE_LEVEL:"level"}},n={check:{enable:false,autoCheckTrigger:false,chkStyle:A.checkbox.STYLE,nocheckInherit:false,chkDisabledInherit:false,radioType:A.radio.TYPE_LEVEL,chkboxType:{"Y":"ps","N":"ps"}},data:{key:{checked:"checked"}},callback:{beforeCheck:null,onCheck:null}},w=function(B){var C=z.getRoot(B);C.radioCheckedList=[]},d=function(B){},o=function(B){var C=B.treeObj,D=r.event;C.bind(D.CHECK,function(G,F,H,E){G.srcEvent=F;u.apply(B.callback.onCheck,[G,H,E])})},y=function(B){var C=B.treeObj,D=r.event;C.unbind(D.CHECK)},p=function(H){var I=H.target,K=z.getSetting(H.data.treeId),F="",C=null,D="",G="",B=null,E=null;if(u.eqs(H.type,"mouseover")){if(K.check.enable&&u.eqs(I.tagName,"span")&&I.getAttribute("treeNode"+r.id.CHECK)!==null){F=u.getNodeMainDom(I).id;D="mouseoverCheck"}}else{if(u.eqs(H.type,"mouseout")){if(K.check.enable&&u.eqs(I.tagName,"span")&&I.getAttribute("treeNode"+r.id.CHECK)!==null){F=u.getNodeMainDom(I).id;D="mouseoutCheck"}}else{if(u.eqs(H.type,"click")){if(K.check.enable&&u.eqs(I.tagName,"span")&&I.getAttribute("treeNode"+r.id.CHECK)!==null){F=u.getNodeMainDom(I).id;D="checkNode"}}}}if(F.length>0){C=z.getNodeCache(K,F);switch(D){case"checkNode":B=m.onCheckNode;break;case"mouseoverCheck":B=m.onMouseoverCheck;break;case"mouseoutCheck":B=m.onMouseoutCheck;break}}var J={stop:D==="checkNode",node:C,nodeEventType:D,nodeEventCallback:B,treeEventType:G,treeEventCallback:E};return J},v=function(J,D,F,G,I,H,E){if(!F){return}var C=J.data.key.checked;if(typeof F[C]=="string"){F[C]=u.eqs(F[C],"true")}F[C]=!!F[C];F.checkedOld=F[C];if(typeof F.nocheck=="string"){F.nocheck=u.eqs(F.nocheck,"true")}F.nocheck=!!F.nocheck||(J.check.nocheckInherit&&G&&!!G.nocheck);if(typeof F.chkDisabled=="string"){F.chkDisabled=u.eqs(F.chkDisabled,"true")}F.chkDisabled=!!F.chkDisabled||(J.check.chkDisabledInherit&&G&&!!G.chkDisabled);if(typeof F.halfCheck=="string"){F.halfCheck=u.eqs(F.halfCheck,"true")}F.halfCheck=!!F.halfCheck;F.check_Child_State=-1;F.check_Focus=false;F.getCheckStatus=function(){return z.getCheckStatus(J,F)};if(J.check.chkStyle==r.radio.STYLE&&J.check.radioType==r.radio.TYPE_ALL&&F[C]){var B=z.getRoot(J);B.radioCheckedList.push(F)}},a=function(D,E,C){var B=D.data.key.checked;if(D.check.enable){z.makeChkFlag(D,E);C.push("")}},l=function(D,C){C.checkNode=function(I,H,J,G){var E=this.setting.data.key.checked;if(I.chkDisabled===true){return}if(H!==true&&H!==false){H=!I[E]}G=!!G;if(I[E]===H&&!J){return}else{if(G&&u.apply(this.setting.callback.beforeCheck,[this.setting.treeId,I],true)==false){return}}if(u.uCanDo(this.setting)&&this.setting.check.enable&&I.nocheck!==true){I[E]=H;var F=j(I,r.id.CHECK,this.setting);if(J||this.setting.check.chkStyle===r.radio.STYLE){k.checkNodeRelation(this.setting,I)}k.setChkClass(this.setting,F,I);k.repairParentChkClassWithSelf(this.setting,I);if(G){this.setting.treeObj.trigger(r.event.CHECK,[null,this.setting.treeId,I])}}};C.checkAllNodes=function(E){k.repairAllChk(this.setting,!!E)};C.getCheckedNodes=function(F){var E=this.setting.data.key.children;F=(F!==false);return z.getTreeCheckedNodes(this.setting,z.getRoot(this.setting)[E],F)};C.getChangeCheckedNodes=function(){var E=this.setting.data.key.children;return z.getTreeChangeCheckedNodes(this.setting,z.getRoot(this.setting)[E])};C.setChkDisabled=function(F,E,G,H){E=!!E;G=!!G;H=!!H;k.repairSonChkDisabled(this.setting,F,E,H);k.repairParentChkDisabled(this.setting,F.getParentNode(),E,G)};var B=C.updateNode;C.updateNode=function(G,H){if(B){B.apply(C,arguments)}if(!G||!this.setting.check.enable){return }var E=j(G,this.setting);if(E.get(0)&&u.uCanDo(this.setting)){var F=j(G,r.id.CHECK,this.setting);if(H==true||this.setting.check.chkStyle===r.radio.STYLE){k.checkNodeRelation(this.setting,G)}k.setChkClass(this.setting,F,G);k.repairParentChkClassWithSelf(this.setting,G)}}},q={getRadioCheckedList:function(E){var D=z.getRoot(E).radioCheckedList;for(var C=0,B=D.length;C-1&&E.check_Child_State<2):(E.check_Child_State>0)))};return D},getTreeCheckedNodes:function(J,C,I,F){if(!C){return[]}var D=J.data.key.children,B=J.data.key.checked,H=(I&&J.check.chkStyle==r.radio.STYLE&&J.check.radioType==r.radio.TYPE_ALL);F=!F?[]:F;for(var G=0,E=C.length;G0){break}}return F},getTreeChangeCheckedNodes:function(G,D,F){if(!D){return[]}var H=G.data.key.children,C=G.data.key.checked;F=!F?[]:F;for(var E=0,B=D.length;E0?2:0}}}if(G==2){F=2;break}else{if(G==0){F=0}}}else{if(I.check.chkStyle==r.checkbox.STYLE){if(J.nocheck===true||J.chkDisabled===true){G=J.check_Child_State}else{if(J.halfCheck===true){G=1}else{if(J[B]){G=(J.check_Child_State===-1||J.check_Child_State===2)?2:1}else{G=(J.check_Child_State>0)?1:0}}}if(G===1){F=1;break}else{if(G===2&&F>-1&&H>0&&G!==F){F=1;break}else{if(F===2&&G>-1&&G<2){F=1;break}else{if(G>-1){F=G}}}}}}}}D.check_Child_State=F}},h={},m={onCheckNode:function(F,E){if(E.chkDisabled===true){return false}var D=z.getSetting(F.data.treeId),B=D.data.key.checked;if(u.apply(D.callback.beforeCheck,[D.treeId,E],true)==false){return true}E[B]=!E[B];k.checkNodeRelation(D,E);var C=j(E,r.id.CHECK,D);k.setChkClass(D,C,E);k.repairParentChkClassWithSelf(D,E);D.treeObj.trigger(r.event.CHECK,[F,D.treeId,E]);return true},onMouseoverCheck:function(E,D){if(D.chkDisabled===true){return false}var C=z.getSetting(E.data.treeId),B=j(D,r.id.CHECK,C);D.check_Focus=true;k.setChkClass(C,B,D);return true},onMouseoutCheck:function(E,D){if(D.chkDisabled===true){return false}var C=z.getSetting(E.data.treeId),B=j(D,r.id.CHECK,C);D.check_Focus=false;k.setChkClass(C,B,D);return true}},i={},e={checkNodeRelation:function(K,E){var I,G,F,D=K.data.key.children,C=K.data.key.checked,B=r.radio;if(K.check.chkStyle==B.STYLE){var J=z.getRadioCheckedList(K);if(E[C]){if(K.check.radioType==B.TYPE_ALL){for(G=J.length-1;G>=0;G--){I=J[G];if(I[C]&&I!=E){I[C]=false;J.splice(G,1);k.setChkClass(K,j(I,r.id.CHECK,K),I);if(I.parentTId!=E.parentTId){k.repairParentChkClassWithSelf(K,I)}}}J.push(E)}else{var H=(E.parentTId)?E.getParentNode():z.getRoot(K);for(G=0,F=H[D].length;G-1)){k.setSonNodeCheckBox(K,E,true)}if(!E[C]&&(!E[D]||E[D].length==0||K.check.chkboxType.N.indexOf("s")>-1)){k.setSonNodeCheckBox(K,E,false)}if(E[C]&&K.check.chkboxType.Y.indexOf("p")>-1){k.setParentNodeCheckBox(K,E,true)}if(!E[C]&&K.check.chkboxType.N.indexOf("p")>-1){k.setParentNodeCheckBox(K,E,false)}}},makeChkClass:function(C,F){var B=C.data.key.checked,H=r.checkbox,E=r.radio,G="";if(F.chkDisabled===true){G=H.DISABLED}else{if(F.halfCheck){G=H.PART}else{if(C.check.chkStyle==E.STYLE){G=(F.check_Child_State<1)?H.FULL:H.PART}else{G=F[B]?((F.check_Child_State===2||F.check_Child_State===-1)?H.FULL:H.PART):((F.check_Child_State<1)?H.FULL:H.PART)}}}var D=C.check.chkStyle+"_"+(F[B]?H.TRUE:H.FALSE)+"_"+G;D=(F.check_Focus&&F.chkDisabled!==true)?D+"_"+H.FOCUS:D;return r.className.BUTTON+" "+H.DEFAULT+" "+D},repairAllChk:function(F,I){if(F.check.enable&&F.check.chkStyle===r.checkbox.STYLE){var D=F.data.key.checked,H=F.data.key.children,C=z.getRoot(F);for(var E=0,B=C[H].length;E0){k.repairParentChkClass(B,D[C][0])}else{k.repairParentChkClass(B,D)}},repairSonChkDisabled:function(G,I,F,D){if(!I){return}var H=G.data.key.children;if(I.chkDisabled!=F){I.chkDisabled=F}k.repairChkClass(G,I);if(I[H]&&D){for(var E=0,C=I[H].length;E0)){J=false;break}}}if(J){k.setParentNodeCheckBox(L,E.getParentNode(),K,H)}}},setSonNodeCheckBox:function(L,E,K,H){if(!E){return}var D=L.data.key.children,B=L.data.key.checked,I=j(E,r.id.CHECK,L);if(!H){H=E}var C=false;if(E[D]){for(var G=0,F=E[D].length;G0)?(K?2:0):-1}}else{E.check_Child_State=-1}k.setChkClass(L,I,E);if(L.check.autoCheckTrigger&&E!=H&&E.nocheck!==true&&E.chkDisabled!==true){L.treeObj.trigger(r.event.CHECK,[null,L.treeId,E])}}}},t={tools:i,view:e,event:h,data:q};f.extend(true,f.fn.zTree.consts,A);f.extend(true,f.fn.zTree._z,t);var c=f.fn.zTree,u=c._z.tools,r=c.consts,k=c._z.view,z=c._z.data,s=c._z.event,j=u.$;z.exSetting(n);z.addInitBind(o);z.addInitUnBind(y);z.addInitCache(d);z.addInitNode(v);z.addInitProxy(p,true);z.addInitRoot(w);z.addBeforeA(a);z.addZTreeTools(l);var x=k.createNodes;k.createNodes=function(E,F,C,B,D){if(x){x.apply(k,arguments)}if(!C){return}k.repairParentChkClassWithSelf(E,B)};var b=k.removeNode;k.removeNode=function(C,D){var B=D.getParentNode();if(b){b.apply(k,arguments)}if(!D||!B){return}k.repairChkClass(C,B);k.repairParentChkClass(C,B)};var g=k.appendNodes;k.appendNodes=function(G,I,C,B,D,F,H){var E="";if(g){E=g.apply(k,arguments)}if(B){z.makeChkFlag(G,B)}return E}})(jQuery);(function(f){var C={event:{DRAG:"ztree_drag",DROP:"ztree_drop",RENAME:"ztree_rename",DRAGMOVE:"ztree_dragmove"},id:{EDIT:"_edit",INPUT:"_input",REMOVE:"_remove"},move:{TYPE_INNER:"inner",TYPE_PREV:"prev",TYPE_NEXT:"next"},node:{CURSELECTED_EDIT:"curSelectedNode_Edit",TMPTARGET_TREE:"tmpTargetzTree",TMPTARGET_NODE:"tmpTargetNode"}},m={edit:{enable:false,editNameSelectAll:false,showRemoveBtn:true,showRenameBtn:true,removeTitle:"remove",renameTitle:"rename",drag:{autoExpandTrigger:false,isCopy:true,isMove:true,prev:true,next:true,inner:true,minMoveSize:5,borderMax:10,borderMin:-5,maxShowNodeNum:5,autoOpenTime:500}},view:{addHoverDom:null,removeHoverDom:null},callback:{beforeDrag:null,beforeDragOpen:null,beforeDrop:null,beforeEditName:null,beforeRename:null,onDrag:null,onDragMove:null,onDrop:null,onRename:null}},x=function(E){var F=A.getRoot(E),D=A.getRoots();F.curEditNode=null;F.curEditInput=null;F.curHoverNode=null;F.dragFlag=0;F.dragNodeShowBefore=[];F.dragMaskList=new Array();D.showHoverDom=true},c=function(D){},n=function(D){var E=D.treeObj;var F=q.event;E.bind(F.RENAME,function(H,J,I,G){v.apply(D.callback.onRename,[H,J,I,G])});E.bind(F.DRAG,function(H,G,J,I){v.apply(D.callback.onDrag,[G,J,I])});E.bind(F.DRAGMOVE,function(H,G,J,I){v.apply(D.callback.onDragMove,[G,J,I])});E.bind(F.DROP,function(J,I,L,K,M,H,G){v.apply(D.callback.onDrop,[I,L,K,M,H,G])})},z=function(D){var E=D.treeObj;var F=q.event;E.unbind(F.RENAME);E.unbind(F.DRAG);E.unbind(F.DRAGMOVE);E.unbind(F.DROP)},o=function(K){var L=K.target,O=A.getSetting(K.data.treeId),M=K.relatedTarget,I="",E=null,F="",J="",D=null,H=null,G=null;if(v.eqs(K.type,"mouseover")){G=v.getMDom(O,L,[{tagName:"a",attrName:"treeNode"+q.id.A}]);if(G){I=v.getNodeMainDom(G).id;F="hoverOverNode"}}else{if(v.eqs(K.type,"mouseout")){G=v.getMDom(O,M,[{tagName:"a",attrName:"treeNode"+q.id.A}]);if(!G){I="remove";F="hoverOutNode"}}else{if(v.eqs(K.type,"mousedown")){G=v.getMDom(O,L,[{tagName:"a",attrName:"treeNode"+q.id.A}]);if(G){I=v.getNodeMainDom(G).id;F="mousedownNode"}}}}if(I.length>0){E=A.getNodeCache(O,I);switch(F){case"mousedownNode":D=l.onMousedownNode;break;case"hoverOverNode":D=l.onHoverOverNode;break;case"hoverOutNode":D=l.onHoverOutNode;break}}var N={stop:false,node:E,nodeEventType:F,nodeEventCallback:D,treeEventType:J,treeEventCallback:H}; return N},w=function(F,J,I,D,H,E,G){if(!I){return}I.isHover=false;I.editNameFlag=false},k=function(E,D){D.cancelEditName=function(G){var F=A.getRoot(this.setting);if(!F.curEditNode){return}j.cancelCurEditNode(this.setting,G?G:null,true)};D.copyNode=function(J,I,H,L){if(!I){return null}if(J&&!J.isParent&&this.setting.data.keep.leaf&&H===q.move.TYPE_INNER){return null}var K=this,F=v.clone(I);if(!J){J=null;H=q.move.TYPE_INNER}if(H==q.move.TYPE_INNER){function G(){j.addNodes(K.setting,J,-1,[F],L)}if(v.canAsync(this.setting,J)){j.asyncNode(this.setting,J,L,G)}else{G()}}else{j.addNodes(this.setting,J.parentNode,-1,[F],L);j.moveNode(this.setting,J,F,H,false,L)}return F};D.editName=function(F){if(!F||!F.tId||F!==A.getNodeCache(this.setting,F.tId)){return}if(F.parentTId){j.expandCollapseParentNode(this.setting,F.getParentNode(),true)}j.editNode(this.setting,F)};D.moveNode=function(H,G,F,K){if(!G){return G}if(H&&!H.isParent&&this.setting.data.keep.leaf&&F===q.move.TYPE_INNER){return null}else{if(H&&((G.parentTId==H.tId&&F==q.move.TYPE_INNER)||i(G,this.setting).find("#"+H.tId).length>0)){return null}else{if(!H){H=null}}}var J=this;function I(){j.moveNode(J.setting,H,G,F,false,K)}if(v.canAsync(this.setting,H)&&F===q.move.TYPE_INNER){j.asyncNode(this.setting,H,K,I)}else{I()}return G};D.setEditable=function(F){this.setting.edit.enable=F;return this.refresh()}},p={setSonNodeLevel:function(G,D,I){if(!I){return}var H=G.data.key.children;I.level=(D)?D.level+1:0;if(!I[H]){return}for(var F=0,E=I[H].length;F1){var aw=T[0].parentTId?T[0].getParentNode()[aQ]:A.getNodes(R);aJ=[];for(a0=0,aW=aw.length;a0-1&&(al+1)!==a0){ai=false}aJ.push(aw[a0]);al=a0}if(T.length===aJ.length){T=aJ;break}}}if(ai){D=T[0].getPreNode();H=T[T.length-1].getNextNode()}Z=i("
      ",R);for(a0=0,aW=T.length;a00);j.removeTreeDom(R,ay);if(a0>R.edit.drag.maxShowNodeNum-1){continue}aR=i("
    • ",R);aR.append(i(ay,q.id.A,R).clone());aR.css("padding","0");aR.children("#"+ay.tId+q.id.A).removeClass(q.node.CURSELECTED);Z.append(aR);if(a0==R.edit.drag.maxShowNodeNum-1){aR=i("
    • ...
    • ",R);Z.append(aR)}}Z.attr("id",T[0].tId+q.id.UL+"_tmp");Z.addClass(R.treeObj.attr("class"));Z.appendTo(M);N=i("",R);N.attr("id","zTreeMove_arrow_tmp");N.appendTo(M);R.treeObj.trigger(q.event.DRAG,[a6,R.treeId,T])}if(W.dragFlag==1){if(ab&&N.attr("id")==a6.target.id&&Q&&(a6.clientX+ag.scrollLeft()+2)>(f("#"+Q+q.id.A,ab).offset().left)){var a5=f("#"+Q+q.id.A,ab);a6.target=(a5.length>0)?a5.get(0):a6.target}else{if(ab){ab.removeClass(q.node.TMPTARGET_TREE);if(Q){f("#"+Q+q.id.A,ab).removeClass(q.node.TMPTARGET_NODE+"_"+q.move.TYPE_PREV).removeClass(q.node.TMPTARGET_NODE+"_"+C.move.TYPE_NEXT).removeClass(q.node.TMPTARGET_NODE+"_"+C.move.TYPE_INNER)}}}ab=null;Q=null;ac=false;ae=R;var a1=A.getSettings();for(var aS in a1){if(a1[aS].treeId&&a1[aS].edit.enable&&a1[aS].treeId!=R.treeId&&(a6.target.id==a1[aS].treeId||f(a6.target).parents("#"+a1[aS].treeId).length>0)){ac=true;ae=a1[aS]}}var av=ag.scrollTop(),a4=ag.scrollLeft(),aj=ae.treeObj.offset(),aD=ae.treeObj.get(0).scrollHeight,aT=ae.treeObj.get(0).scrollWidth,a2=(a6.clientY+av-aj.top),aP=(ae.treeObj.height()+aj.top-a6.clientY-av),aK=(a6.clientX+a4-aj.left),au=(ae.treeObj.width()+aj.left-a6.clientX-a4),ax=(a2R.edit.drag.borderMin),a7=(aPR.edit.drag.borderMin),aN=(aKR.edit.drag.borderMin),ar=(auR.edit.drag.borderMin),ak=a2>R.edit.drag.borderMin&&aP>R.edit.drag.borderMin&&aK>R.edit.drag.borderMin&&au>R.edit.drag.borderMin,aH=(ax&&ae.treeObj.scrollTop()<=0),aG=(a7&&(ae.treeObj.scrollTop()+ae.treeObj.height()+10)>=aD),an=(aN&&ae.treeObj.scrollLeft()<=0),aB=(ar&&(ae.treeObj.scrollLeft()+ae.treeObj.width()+10)>=aT); if(a6.target&&v.isChildOrSelf(a6.target,ae.treeId)){var at=a6.target;while(at&&at.tagName&&!v.eqs(at.tagName,"li")&&at.id!=ae.treeId){at=at.parentNode}var aA=true;for(a0=0,aW=T.length;a00){aA=false;break}}}if(aA&&a6.target&&v.isChildOrSelf(a6.target,at.id+q.id.A)){ab=f(at);Q=at.id}}ay=T[0];if(ak&&v.isChildOrSelf(a6.target,ae.treeId)){if(!ab&&(a6.target.id==ae.treeId||aH||aG||an||aB)&&(ac||(!ac&&ay.parentTId))){ab=ae.treeObj}if(ax){ae.treeObj.scrollTop(ae.treeObj.scrollTop()-10)}else{if(a7){ae.treeObj.scrollTop(ae.treeObj.scrollTop()+10)}}if(aN){ae.treeObj.scrollLeft(ae.treeObj.scrollLeft()-10)}else{if(ar){ae.treeObj.scrollLeft(ae.treeObj.scrollLeft()+10)}}if(ab&&ab!=ae.treeObj&&ab.offset().left=-0.2)&&aL){aF=1-N.width();aE=aX-N.height()/2;E=q.move.TYPE_PREV}else{if((aq==0||am>=aq&&am<=1.2)&&ao){aF=1-N.width();aE=(aV==null||(aO.isParent&&aO.open))?(aX+aC.height()-N.height()/2):(aV.offset().top-N.height()/2);E=q.move.TYPE_NEXT}else{if(ah){aF=5-N.width();aE=aX;E=q.move.TYPE_INNER}else{a3()}}}if(ab){N.css({"display":"block","top":aE+"px","left":(aZ+aF)+"px"});aC.addClass(q.node.TMPTARGET_NODE+"_"+E);if(U!=Q||G!=E){O=(new Date()).getTime()}if(aO&&aO.isParent&&E==q.move.TYPE_INNER){var az=true;if(window.zTreeMoveTimer&&window.zTreeMoveTargetNodeTId!==aO.tId){clearTimeout(window.zTreeMoveTimer);window.zTreeMoveTargetNodeTId=null}else{if(window.zTreeMoveTimer&&window.zTreeMoveTargetNodeTId===aO.tId){az=false}}if(az){window.zTreeMoveTimer=setTimeout(function(){if(E!=q.move.TYPE_INNER){return}if(aO&&aO.isParent&&!aO.open&&(new Date()).getTime()-O>ae.edit.drag.autoOpenTime&&v.apply(ae.callback.beforeDragOpen,[ae.treeId,aO],true)){j.switchNode(ae,aO);if(ae.edit.drag.autoExpandTrigger){ae.treeObj.trigger(q.event.EXPAND,[ae.treeId,aO])}}},ae.edit.drag.autoOpenTime+50);window.zTreeMoveTargetNodeTId=aO.tId}}}}}else{E=q.move.TYPE_INNER;if(ab&&v.apply(ae.edit.drag.inner,[ae.treeId,T,null],!!ae.edit.drag.inner)){ab.addClass(q.node.TMPTARGET_TREE)}else{ab=null}N.css({"display":"none"});if(window.zTreeMoveTimer){clearTimeout(window.zTreeMoveTimer);window.zTreeMoveTargetNodeTId=null}}U=Q;G=E;R.treeObj.trigger(q.event.DRAGMOVE,[a6,R.treeId,T])}return false}ag.bind("mouseup",af);function af(ao){if(window.zTreeMoveTimer){clearTimeout(window.zTreeMoveTimer);window.zTreeMoveTargetNodeTId=null}U=null;G=null;ag.unbind("mousemove",P);ag.unbind("mouseup",af);ag.unbind("selectstart",F);M.css("cursor","auto");if(ab){ab.removeClass(q.node.TMPTARGET_TREE);if(Q){f("#"+Q+q.id.A,ab).removeClass(q.node.TMPTARGET_NODE+"_"+q.move.TYPE_PREV).removeClass(q.node.TMPTARGET_NODE+"_"+C.move.TYPE_NEXT).removeClass(q.node.TMPTARGET_NODE+"_"+C.move.TYPE_INNER)}}v.showIfameMask(R,false);L.showHoverDom=true;if(W.dragFlag==0){return}W.dragFlag=0;var am,ai,an;for(am=0,ai=T.length;am0){H.dragMaskList[0].remove();H.dragMaskList.shift()}if(I){var L=i("iframe",K);for(var G=0,E=L.length;G",K);J.appendTo(i("body",K));H.dragMaskList.push(J)}}}},d={addEditBtn:function(E,F){if(F.editNameFlag||i(F,q.id.EDIT,E).length>0){return}if(!v.apply(E.edit.showRenameBtn,[E.treeId,F],E.edit.showRenameBtn)){return}var G=i(F,q.id.A,E),D="";G.append(D);i(F,q.id.EDIT,E).bind("click",function(){if(!v.uCanDo(E)||v.apply(E.callback.beforeEditName,[E.treeId,F],true)==false){return false}j.editNode(E,F);return false}).show()},addRemoveBtn:function(D,E){if(E.editNameFlag||i(E,q.id.REMOVE,D).length>0){return}if(!v.apply(D.edit.showRemoveBtn,[D.treeId,E],D.edit.showRemoveBtn)){return}var G=i(E,q.id.A,D),F="";G.append(F);i(E,q.id.REMOVE,D).bind("click",function(){if(!v.uCanDo(D)||v.apply(D.callback.beforeRemove,[D.treeId,E],true)==false){return false}j.removeNode(D,E);D.treeObj.trigger(q.event.REMOVE,[D.treeId,E]);return false}).bind("mousedown",function(H){return true}).show()},addHoverDom:function(D,E){if(A.getRoots().showHoverDom){E.isHover=true;if(D.edit.enable){j.addEditBtn(D,E);j.addRemoveBtn(D,E)}v.apply(D.view.addHoverDom,[D.treeId,E])}},cancelCurEditNode:function(K,L,H){var J=A.getRoot(K),G=K.data.key.name,E=J.curEditNode;if(E){var F=J.curEditInput,I=L?L:(H?E[G]:F.val());if(v.apply(K.callback.beforeRename,[K.treeId,E,I,H],true)===false){return false}E[G]=I;var D=i(E,q.id.A,K);D.removeClass(q.node.CURSELECTED_EDIT);F.unbind();j.setNodeName(K,E);E.editNameFlag=false;J.curEditNode=null;J.curEditInput=null;j.selectNode(K,E,false);K.treeObj.trigger(q.event.RENAME,[K.treeId,E,H])}J.noSelection=true;return true},editNode:function(G,H){var D=A.getRoot(G);j.editNodeBlur=false;if(A.isSelectedNode(G,H)&&D.curEditNode==H&&H.editNameFlag){setTimeout(function(){v.inputFocus(D.curEditInput)},0);return}var F=G.data.key.name;H.editNameFlag=true;j.removeTreeDom(G,H);j.cancelCurEditNode(G);j.selectNode(G,H,false);i(H,q.id.SPAN,G).html("");var E=i(H,q.id.INPUT,G);E.attr("value",H[F]);if(G.edit.editNameSelectAll){v.inputSelect(E)}else{v.inputFocus(E)}E.bind("blur",function(I){if(!j.editNodeBlur){j.cancelCurEditNode(G)}}).bind("keydown",function(I){if(I.keyCode=="13"){j.editNodeBlur=true;j.cancelCurEditNode(G)}else{if(I.keyCode=="27"){j.cancelCurEditNode(G,null,true)}}}).bind("click",function(I){return false}).bind("dblclick",function(I){return false});i(H,q.id.A,G).addClass(q.node.CURSELECTED_EDIT);D.curEditInput=E;D.noSelection=false;D.curEditNode=H},moveNode:function(N,G,Q,F,ab,H){var S=A.getRoot(N),L=N.data.key.children;if(G==Q){return}if(N.data.keep.leaf&&G&&!G.isParent&&F==q.move.TYPE_INNER){return}var V=(Q.parentTId?Q.getParentNode():S),P=(G===null||G==S);if(P&&G===null){G=S}if(P){F=q.move.TYPE_INNER}var D=(G.parentTId?G.getParentNode():S);if(F!=q.move.TYPE_PREV&&F!=q.move.TYPE_NEXT){F=q.move.TYPE_INNER}if(F==q.move.TYPE_INNER){if(P){Q.parentTId=null}else{if(!G.isParent){G.isParent=true;G.open=!!G.open;j.setNodeLineIcos(N,G)}Q.parentTId=G.tId}}var I,K;if(P){I=N.treeObj;K=I}else{if(!H&&F==q.move.TYPE_INNER){j.expandCollapseNode(N,G,true,false)}else{if(!H){j.expandCollapseNode(N,G.getParentNode(),true,false)}}I=i(G,N);K=i(G,q.id.UL,N); if(!!I.get(0)&&!K.get(0)){var Z=[];j.makeUlHtml(N,G,Z,"");I.append(Z.join(""))}K=i(G,q.id.UL,N)}var X=i(Q,N);if(!X.get(0)){X=j.appendNodes(N,Q.level,[Q],null,-1,false,true).join("")}else{if(!I.get(0)){X.remove()}}if(K.get(0)&&F==q.move.TYPE_INNER){K.append(X)}else{if(I.get(0)&&F==q.move.TYPE_PREV){I.before(X)}else{if(I.get(0)&&F==q.move.TYPE_NEXT){I.after(X)}}}var U,T,J=-1,W=0,aa=null,E=null,Y=Q.level;if(Q.isFirstNode){J=0;if(V[L].length>1){aa=V[L][1];aa.isFirstNode=true}}else{if(Q.isLastNode){J=V[L].length-1;aa=V[L][J-1];aa.isLastNode=true}else{for(U=0,T=V[L].length;U=0){V[L].splice(J,1)}if(F!=q.move.TYPE_INNER){for(U=0,T=D[L].length;U0){E=G[L][G[L].length-1];E.isLastNode=false}G[L].splice(G[L].length,0,Q);Q.isLastNode=true;Q.isFirstNode=(G[L].length==1)}else{if(G.isFirstNode&&F==q.move.TYPE_PREV){D[L].splice(W,0,Q);E=G;E.isFirstNode=false;Q.parentTId=G.parentTId;Q.isFirstNode=true;Q.isLastNode=false}else{if(G.isLastNode&&F==q.move.TYPE_NEXT){D[L].splice(W+1,0,Q);E=G;E.isLastNode=false;Q.parentTId=G.parentTId;Q.isFirstNode=false;Q.isLastNode=true}else{if(F==q.move.TYPE_PREV){D[L].splice(W,0,Q)}else{D[L].splice(W+1,0,Q)}Q.parentTId=G.parentTId;Q.isFirstNode=false;Q.isLastNode=false}}}A.fixPIdKeyValue(N,Q);A.setSonNodeLevel(N,Q.getParentNode(),Q);j.setNodeLineIcos(N,Q);j.repairNodeLevelClass(N,Q,Y);if(!N.data.keep.parent&&V[L].length<1){V.isParent=false;V.open=false;var O=i(V,q.id.UL,N),R=i(V,q.id.SWITCH,N),M=i(V,q.id.ICON,N);j.replaceSwitchClass(V,R,q.folder.DOCU);j.replaceIcoClass(V,M,q.folder.DOCU);O.css("display","none")}else{if(aa){j.setNodeLineIcos(N,aa)}}if(E){j.setNodeLineIcos(N,E)}if(!!N.check&&N.check.enable&&j.repairChkClass){j.repairChkClass(N,V);j.repairParentChkClassWithSelf(N,V);if(V!=Q.parent){j.repairParentChkClassWithSelf(N,Q)}}if(!H){j.expandCollapseParentNode(N,Q.getParentNode(),true,ab)}},removeEditBtn:function(D,E){i(E,q.id.EDIT,D).unbind().remove()},removeRemoveBtn:function(D,E){i(E,q.id.REMOVE,D).unbind().remove()},removeTreeDom:function(D,E){E.isHover=false;j.removeEditBtn(D,E);j.removeRemoveBtn(D,E);v.apply(D.view.removeHoverDom,[D.treeId,E])},repairNodeLevelClass:function(E,G,F){if(F===G.level){return}var H=i(G,E),K=i(G,q.id.A,E),J=i(G,q.id.UL,E),D=q.className.LEVEL+F,I=q.className.LEVEL+G.level;H.removeClass(D);H.addClass(I);K.removeClass(D);K.addClass(I);J.removeClass(D);J.addClass(I)},selectNodes:function(G,E){for(var F=0,D=E.length;F0)}}},t={tools:h,view:d,event:g,data:p};f.extend(true,f.fn.zTree.consts,C);f.extend(true,f.fn.zTree._z,t);var b=f.fn.zTree,v=b._z.tools,q=b.consts,j=b._z.view,A=b._z.data,s=b._z.event,i=v.$;A.exSetting(m);A.addInitBind(n);A.addInitUnBind(z);A.addInitCache(c);A.addInitNode(w);A.addInitProxy(o);A.addInitRoot(x);A.addZTreeTools(k);var u=j.cancelPreSelectedNode;j.cancelPreSelectedNode=function(F,G){var H=A.getRoot(F).curSelectedList;for(var E=0,D=H.length;E