var nlsddSession=null;function NlsDDAction(){}NlsDDAction.DD_INSERT="I";NlsDDAction.DD_APPEND="A";function NlsDDSession(C,D){this.srcObj=C;this.srcData=D;this.destObj=null;this.destData=null;this.action=null;this.consume=function(){this.srcObj=null;this.srcData=null;this.destObj=null;this.destData=null;this.action=null}}function I18N(){this.notAllowed="Not allowed!"}function NlsTreeDD(B){this.tId=B;this.tree=nlsTree[B];this.tree.opt.evMouseUp=true;this.tree.opt.evMouseDown=true;this.tree.opt.evMouseOver=true;this.tree.opt.evMouseOut=true;this.tree.treeOnMouseUp=ddMouseUp;this.tree.treeOnMouseDown=ddMouseDown;this.tree.treeOnMouseOver=ddMouseOver;this.tree.treeOnMouseOut=ddMouseOut;this.tree.ddHandler=this;this.startDrag=startDrag;this.endDrag=endDrag;this.ic=[new Image()];this.ic[0].src=this.tree.defImgPath+"nodrop.gif";this.i18n=new I18N();this.onNodeDrag=onNodeDrag;this.onNodeDrop=onNodeDrop;this.canDrag=canDragNode;this.canDrop=canDropNode;return this}function startDrag(J){var K=NlsGetElementById("ddGesture");var O=window.scrollX?window.scrollX:document.body.scrollLeft;var P=window.scrollY?window.scrollY:document.body.scrollTop;K.style.left=J.clientX+O+5+"px";K.style.top=J.clientY+P+5+"px";K.style.zIndex=1;if(K.style.display=="none"){var Q=nlsddSession.srcData;var N="";for(var L=0;L<Q.length;L++){var R=NlsGetElementById(Q[L].id).childNodes[0].childNodes[0].childNodes[0].childNodes[1];var M=null;if(nlsddSession.srcObj.opt.icon){M=R.childNodes[(R.childNodes.length>1?1:0)]}N+="<table cellpadding=0 cellspacing=0><td>"+(M?'<img src="'+M.src+'">':"&nbsp;")+'</td><td><a class="'+this.tree.opt.stlprf+'node">'+Q[L].capt+"</a></td></table>"}K.innerHTML=N;K.style.display=""}this.onNodeDrag(J)}function endDrag(D){var C=NlsGetElementById("ddGesture");C.innerHTML="";C.style.display="none";document.onmousemove=null;document.onmouseup=null;document.onmousedown=function(){return true};document.onselectstart=function(){return true};document.onselectstart=function(){return true}}function getTargetId(E,H,F){if(nls_isIE){var G=E.nLst[H.srcElement.parentElement.parentElement.parentElement.parentElement.parentElement.id];if(G){return G.orgId}else{return F}}else{return F}}function ddMouseUp(D,E){var F=this.getNodeById(getTargetId(this,D,E));if(!nlsddSession){return false}if(!this.ddHandler.canDrop(F.orgId)){return false}nlsddSession.destObj=this;nlsddSession.destData=F;this.ddHandler.endDrag(D);this.ddHandler.onNodeDrop(D);nlsddSession=null}function ddMouseDown(I,G){if(this.$editing){return }var J=this.ddHandler;var F=this.genIntId(G);NlsTree._blockEdit=false;if(this.opt.multiSel){if(!this.isSelected(G)&&!(I.ctrlKey||I.shiftKey)){NlsTree._blockEdit=true;this.selectNode(F)}}else{if(this.selNd==null||this.selNd.id!=F){this.selectNode(F);NlsTree._blockEdit=true}}var H=this.getSelNodes();if(J.canDrag(G)){nlsddSession=new NlsDDSession(this,H);document.onmousemove=function(A){J.startDrag((A?A:event))};document.onmouseup=function(A){nlsddSession.action=null;J.endDrag((A?A:event))};document.onselectstart=function(){return false};document.onmousedown=function(){return false};document.ondragstart=function(){return false}}}function ddMouseOver(I,G){if(nlsddSession!=null&&document.onmousemove!=null){}else{return }var F=this.ddHandler;var H=getTargetId(this,I,G);if(!F.canDrop(H)){var J=NlsGetElementById("ddGesture");J.style.display="";J.innerHTML='<table cellpadding=0 cellspacing=0><td><img src="'+F.ic[0].src+'"></td><td><a class="'+this.opt.stlprf+'node">'+F.i18n.notAllowed+"</a></td></table>"}}function ddMouseOut(F,E){if(nlsddSession!=null&&document.onmousemove!=null){}else{return }var D=NlsGetElementById("ddGesture");D.style.display="none"}function onNodeDrag(B){if(B.shiftKey){nlsddSession.action=NlsDDAction.DD_INSERT}else{nlsddSession.action=NlsDDAction.DD_APPEND}}function onNodeDrop(e){if(!nlsddSession){return }var sData,dData,sObj,dObj;with(nlsddSession){if(!action){return }sData=srcData;sObj=srcObj;dData=destData;dObj=destObj}if(sObj.tId==dObj.tId){switch(nlsddSession.action){case NlsDDAction.DD_INSERT:sObj.moveChild(sData,dData,2);
break;case NlsDDAction.DD_APPEND:sObj.moveChild(sData,dData,1);break}}else{switch(nlsddSession.action){case NlsDDAction.DD_INSERT:for(i=0;i<sData.length;i++){with(sData[i]){var nNd=dObj.addBefore(null,dData.orgId,capt,url,(ic?ic.join(","):ic),exp,chk,xtra);if(fc){duplicateNode(fc,nNd)}}}dObj.reloadNode(dData.pr.orgId);break;case NlsDDAction.DD_APPEND:for(i=0;i<sData.length;i++){with(sData[i]){var nNd=dObj.append(null,dData.orgId,capt,url,(ic?ic.join(","):ic),exp,chk,xtra);if(fc){duplicateNode(fc,nNd)}}}dObj.reloadNode(nNd.orgId);dObj.expandNode(dData.orgId);break}}}function duplicateNode(E,D){do{var F=nlsddSession.destObj.add(null,D.orgId,E.capt,E.url,(E.ic?E.ic.join(","):E.ic),E.exp,E.chk,E.xtra);if(E.fc){duplicateNode(E.fc,F)}E=E.nx}while(E)}function canDragNode(E){if(this.tree.opt.multiSel){var F=this.tree.getSelNodes();for(var D=0;D<F.length;D++){if(F[D].allowDrag==false){return false}}}else{if(this.tree.getNodeById(E).allowDrag==false){return false}}return true}function canDropNode(H){var G=this.tree.getNodeById(H);var I=nlsddSession.srcData;var J=(nlsddSession.srcObj.tId==this.tree.tId);if(G.allowDrop==false){return false}if(!nlsddSession){return false}if(!nlsddSession.action){return false}if(!I||!G||I.length==0){return false}if(J){if(this.tree.isSelected(G.orgId)){return false}var K=G;while(K.pr){if(this.tree.isSelected(K.orgId)){return false}K=K.pr}switch(nlsddSession.action){case NlsDDAction.DD_INSERT:if(G.equals(this.tree.rt)){return false}for(var L=0;L<I.length;L++){if(I[L].nx&&G.equals(I[L].nx)){return false}}break;case NlsDDAction.DD_APPEND:if(this.tree.isSelected(this.tree.rt.orgId)){return false}for(var L=0;L<I.length;L++){if(G.equals(I[L].pr)){return false}}break}}else{switch(nlsddSession.action){case NlsDDAction.DD_INSERT:if(G.equals(this.tree.rt)){return false}case NlsDDAction.DD_APPEND:break}}return true}NlsTree._allowEdit=false;NLSTREE.ddHandler=null;NLSTREE.unloadChild=function(C){var D=C.pr;if(D.lc.equals(C)){D.lc=C.pv}if(D.fc.equals(C)){D.fc=C.nx}if(C.pv!=null){C.pv.nx=C.nx}if(C.nx!=null){C.nx.pv=C.pv}C.nx=null;C.pv=null;C.pr=null;if(this.selNd){this.selNd=null;this.selElm=null}if(this.opt.multiSel){this.msRemove(C.orgId)}};NLSTREE.moveChild=function(M,R,S){if(!M||!R||M.length==0){return }if(this.isSelected(R.orgId)){return }var K=R;while(K.pr){if(this.isSelected(K.orgId)){return }K=K.pr}switch(S){case 1:if(this.isSelected(this.rt.orgId)){return }for(var T=0;T<M.length;T++){if(R.equals(M[T].pr)){false}}for(var T=0;T<M.length;T++){var O=M[T].pr;this.unloadChild(M[T]);this.reloadNode(O.orgId);M[T].pr=R;if(R.lc==null){R.fc=M[T];R.lc=M[T]}else{var P=R.fc;if(this.opt.sort!="no"){do{if(this.opt.sort=="asc"?this.compareNode(P,M[T]):this.compareNode(M[T],P)){break}P=P.nx}while(P!=null);if(P!=null){if(P.pv==null){P.pv=M[T];R.fc=M[T]}else{M[T].pv=P.pv;P.pv.nx=M[T];P.pv=M[T]}M[T].nx=P}}if(this.opt.sort=="no"||P==null){M[T].pv=R.lc;R.lc.nx=M[T];R.lc=M[T]}}}this.reloadNode(R.orgId);this.expandNode(R.orgId);break;case 2:case 3:var L="pv";var Q="nx";var N="lc";if(S==2){L="nx";Q="pv";N="fc"}if(R.equals(this.rt)){return }for(var T=0;T<M.length;T++){if(M[T][L]&&R.equals(M[T][L])){return }}for(var T=0;T<M.length;T++){var O=M[T].pr;this.unloadChild(M[T]);this.reloadNode(O.orgId);M[T].pr=R.pr;if(R[Q]==null){R[Q]=M[T];R.pr[N]=M[T]}else{M[T][Q]=R[Q];R[Q][L]=M[T];R[Q]=M[T]}M[T][L]=R}this.reloadNode(R.pr.orgId);break}};function nls_setNodeDnD(J,G,H,F,I){if(I==true){J.loopTree(J.getNodeById(G),function(A){A[H]=F})}else{J.getNodeById(G)[H]=F}}NLSTREE.setDrag=function(E,D,F){nls_setNodeDnD(this,E,"allowDrag",D,F)};NLSTREE.setDrop=function(E,D,F){nls_setNodeDnD(this,E,"allowDrop",D,F)};NlsNode.prototype.allowDrag=true;NlsNode.prototype.allowDrop=true;
