pgadmin4/web/pgadmin/browser/static/js/aciTree/jquery.aciTree.min.js

45 lines
96 KiB
JavaScript
Raw Normal View History

/*
* aciTree jQuery Plugin v4.5.0-rc.7
* http://acoderinsights.ro
*
* Copyright (c) 2014 Dragos Ursu
* Dual licensed under the MIT or GPL Version 2 licenses.
*
* Require jQuery Library >= v1.9.0 http://jquery.com
* + aciPlugin >= v1.5.1 https://github.com/dragosu/jquery-aciPlugin
*/
// DOM
aciPluginClass.plugins.aciTree_dom={container:function(b){var a=b.lastChild;if(a&&(a.nodeName=="UL")){return a}return null},firstChild:function(b,d){var a=this.container(b);if(a){var c=a.firstChild;if(d){while(c&&!d.call(this,c)){c=c.nextSibling}}return c}return null},lastChild:function(c,d){var a=this.container(c);if(a){var b=a.lastChild;if(d){while(b&&!d.call(this,b)){b=b.previousSibling}}return b}return null},prev:function(b,c){var a=b.previousSibling;if(c){while(a&&!c.call(this,a)){a=a.previousSibling}}return a},next:function(b,c){var a=b.nextSibling;if(c){while(a&&!c.call(this,a)){a=a.nextSibling}}return a},prevAll:function(f,h){var e,d,g,a,c,b;while(true){e=this.prev(f);if(e){if(h){a=h.call(this,e);if(a===null){f=e;continue}}d=this.lastChild(e);if(d){if(h&&(h.call(this,d)===null)){f=d;continue}c=false;while(g=this.lastChild(d)){d=g;if(h){a=h.call(this,d);if(a===null){f=d;c=true;break}}}if(c){continue}if(h){a=h.call(this,d);if(a){return d}else{if(a!==null){f=d;continue}}}else{return d}}else{if(!h||a){return e}else{f=e;continue}}}b=this.parent(f);if(b){if(h){a=h.call(this,b);if(a){return b}else{f=b}}else{return b}}else{return null}}return null},nextAll:function(d,g){var e,a,c,b,f;while(true){e=this.firstChild(d);if(e){if(g){a=g.call(this,e);if(a){return e}else{d=e;if(a!==null){continue}}}else{return e}}while(true){c=this.next(d);if(c){if(g){a=g.call(this,c);if(a){return c}else{d=c;if(a!==null){break}else{continue}}}else{return c}}else{b=d;f=null;while(b=this.parent(b)){c=this.next(b);if(c){if(g){a=g.call(this,c);if(a){return c}else{d=c;if(a!==null){f=true}else{f=false}break}}else{return c}}}if(f!==null){if(f){break}else{continue}}return null}}}return null},first:function(b,d){var a=this.container(b);if(a){var c=a.firstChild;if(c){if(d&&!d.call(this,c)){return this.nextAll(c,d)}return c}}return null},last:function(c,e){var a=this.container(c);if(a){var b=a.lastChild;if(b){if(e&&(e.call(this,b)===null)){return this.prevAll(b,e)}else{var d;while(d=this.lastChild(b)){b=d}if(e&&!e.call(this,b)){return this.prevAll(b,e)}return b}}}return null},children:function(b,f,h){var a=[],i=[],d,c,g;var e=this.firstChild(b);if(e){while(true){g=false;do{if(h){d=h.call(this,e);if(d){a.push(e)}if(f&&(d!==null)){c=this.firstChild(e);if(c){i.push(e);e=c;g=true;break}}}else{a.push(e);if(f){c=this.firstChild(e);if(c){i.push(e);e=c;g=true;break}}}}while(e=e.nextSibling);if(!g){while(e=i.pop()){e=e.nextSibling;if(e){break}}if(!e){break}}}}return a},childrenTill:function(d,g){var e=[],a,b,c;var f=d.firstChild;if(f){while(true){c=false;do{a=g.call(this,f);if(a){return f}else{if(a===null){return null}}b=f.firstChild;if(b){e.push(f);f=b;c=true;break}}while(f=f.nextSibling);if(!c){while(f=e.pop()){f=f.nextSibling;if(f){break}}if(!f){break}}}}return null},childrenByClass:function(b,a){if(b.getElementsByClassName){var c=b.getElementsByClassName(a instanceof Array?a.join(" "):a);return c?c[0]:null}else{return this.childrenTill(b,function(d){return this.hasClass(d,a)})}},parent:function(b){var a=b.parentNode.parentNode;if(a&&(a.nodeName=="LI")){return a}return null},parentFrom:function(a){while(a.nodeName!="LI"){a=a.parentNode;if(!a){return null}}return a},parentTill:function(b,c){var a;while(b=b.parentNode){a=c.call(this,b);if(a){return b}else{if(a===null){return null}}}return null},parentByClass:function(b,a){return this.parentTill(b,function(c){return this.hasClass(c,a)})},hasClass:function(e,d,a){var b=" "+e.className+" ";if(a instanceof Array){for(var c=0;c<a.length;c++){if(b.indexOf(" "+a[c]+" ")!=-1){return false}}}else{if(a&&b.indexOf(" "+a+" ")!=-1){return false}}if(d instanceof Array){for(var c=0;c<d.length;c++){if(b.indexOf(" "+d[c]+" ")==-1){return false}}}else{if(d&&b.indexOf(" "+d+" ")==-1){return false}}return true},withClass:function(b,e,a){var d=[];for(var c=0;c<b.length;c++){if(this.hasClass(b[c],e,a)){d.push(b[c])}}return d},hasAnyClass:function(e,d,a){var b=" "+e.className+" ";if(a instanceof Array){for(var c=0;c<a.length;c++){if(b.indexOf(" "+a[c]+" ")!=-1){return false}}}else{if(a&&b.indexOf(" "+a+" ")!=-1){return false}}if(d ins
// core
(function(d,c,f){var b={ajax:{url:null,dataType:"json"},dataSource:null,rootData:null,queue:{async:4,interval:50,delay:20},loaderDelay:500,expand:false,collapse:false,unique:false,empty:false,show:{props:{height:"show"},duration:"medium",easing:"linear"},animateRoot:true,hide:{props:{height:"hide"},duration:"medium",easing:"linear"},view:{duration:"medium",easing:"linear"},ajaxHook:function(h,g){g.url+=(h?this.getId(h):"")},itemHook:function(h,i,g,j){},serialize:function(g,i,h){if(typeof i=="object"){return h}else{return"|"+h}}};var e={__extend:function(){d.extend(this._instance,{queue:new this._queue(this,this._instance.options.queue)});d.extend(this._private,{locked:false,itemClone:{},loaderHide:null,loaderInterval:null,delayBusy:0})},init:function(h){h=this._options(h);if(this.wasInit()){this._trigger(null,"wasinit",h);this._fail(null,h);return}if(this.isLocked()){this._trigger(null,"locked",h);this._fail(null,h);return}if(!this._trigger(null,"beforeinit",h)){this._trigger(null,"initfail",h);this._fail(null,h);return}this._private.locked=true;this._instance.jQuery.addClass("aciTree"+this._instance.index).attr("role","tree").on("click"+this._instance.nameSpace,".aciTreeButton",this.proxy(function(k){var j=this.itemFrom(k.target);if(!this.isBusy(j)){this.toggle(j,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}})).on("mouseenter"+this._instance.nameSpace+" mouseleave"+this._instance.nameSpace,".aciTreePush",function(k){var j=k.target;if(!a.hasClass(j,"aciTreePush")){j=a.parentByClass(j,"aciTreePush")}a.toggleClass(j,"aciTreeHover",k.type=="mouseenter")}).on("mouseenter"+this._instance.nameSpace+" mouseleave"+this._instance.nameSpace,".aciTreeLine",function(k){var j=k.target;if(!a.hasClass(j,"aciTreeLine")){j=a.parentByClass(j,"aciTreeLine")}a.toggleClass(j,"aciTreeHover",k.type=="mouseenter")});this._initHook();var i=this.proxy(function(){this._super();this._private.locked=false;this._trigger(null,"init",h);this._success(null,h)});var g=this.proxy(function(){this._super();this._private.locked=false;this._trigger(null,"initfail",h);this._fail(null,h)});if(this._instance.options.rootData){this.loadFrom(null,this._inner(h,{success:i,fail:g,itemData:this._instance.options.rootData}))}else{if(this._instance.options.ajax.url){this.ajaxLoad(null,this._inner(h,{success:i,fail:g}))}else{i.apply(this)}}},_initHook:function(){},isLocked:function(){return this._private.locked},_format:function(p,h){if(!(h instanceof Array)){return p}var j=p.split(/(%[0-9]+)/gm);var q="",g,l,o=false,m;var n=new c.RegExp("^%[0-9]+$");for(var k=0;k<j.length;k++){g=j[k];m=g.length;if(m){if(!o&&n.test(g)){l=c.parseInt(g.substr(1))-1;if((l>=0)&&(l<h.length)){q+=h[l];continue}}else{o=false;if(g.substr(m-1)=="%"){if(g.substr(m-2)!="%%"){o=true}g=g.substr(0,m-1)}}q+=g}}return q},_coreDOM:{leaf:function(g){a.addRemoveListClass(g.toArray(),"aciTreeLeaf",["aciTreeInode","aciTreeInodeMaybe","aciTreeOpen"],function(h){h.firstChild.removeAttribute("aria-expanded")})},inode:function(g,h){a.addRemoveListClass(g.toArray(),h?"aciTreeInode":"aciTreeInodeMaybe","aciTreeLeaf",function(i){i.firstChild.setAttribute("aria-expanded",false)})},toggle:function(g,h){a.toggleListClass(g.toArray(),"aciTreeOpen",h,function(i){i.firstChild.setAttribute("aria-expanded",h)})},oddEven:function(g,k){var j=g.toArray();for(var h=0;h<j.length;h++){a.addRemoveClass(j[h],k?"aciTreeOdd":"aciTreeEven",k?"aciTreeEven":"aciTreeOdd");k=!k}}},_queue:function(i,s){var l=false;var r=[],q=[];var p=0,h=0,m=0,o=0;var k=function(){if(l){o--;return}var t=new c.Date().getTime();if(m>t){o--;return}var v,u=false;if(p<s.async*2){v=r.shift()}if(!v&&(h<s.async)){v=q.shift();u=true}if(v){if(u){h++;v.call(i,function(){h--});if(o<40){o++;k()}}else{p++;v.call(i,function(){if(t-m>s.interval){m=t+s.delay}p--;if(o<40){o++;k()}})}}o--};var j=[];var g=function(){for(var t=0;t<4;t++){j[t]=c.setInterval(function(){if(o<20){o++;k()}},10)}};var n=function(){for(var t=0;t<j.length;t++){c.clearInterval(j[t])}};g();this.init=function(){this.destroy();g()
// utils
(function(e,d,f){var b={filterHook:function(h,g,i){return g.length?i.test(d.String(this.getLabel(h))):true}};var c={__extend:function(){e.extend(this._instance,{filter:new this._queue(this,this._instance.options.queue)});this._instance.filter.destroy();this._super()},branch:function(h,k,i){var g=this._instance.queue;var j=this.proxy(function(m,o,l){var n=l?this.next(m):this.first(m);if(n.length){if(this.isInode(n)){if(this.wasLoad(n)){g.push(function(p){o.call(this,n);j(n,o);j(n,o,true);p()})}else{if(i){this.ajaxLoad(n,{success:function(){o.call(this,n);j(n,o);j(n,o,true)},fail:function(){j(n,o,true)}})}else{g.push(function(p){o.call(this,n);j(n,o,true);p()})}}}else{g.push(function(p){o.call(this,n);j(n,o,true);p()})}}});j(h,k)},swap:function(i){i=this._options(i,null,"swapfail",null,null);var h=i.item1;var g=i.item2;if(this.isItem(h)&&this.isItem(g)&&!this.isChildren(h,g)&&!this.isChildren(g,h)&&(h[0]!=g[0])){if(!this._trigger(null,"beforeswap",i)){this._fail(null,i);return}var l=this.prev(h);if(l.length){if(g[0]==l[0]){g.before(h)}else{h.insertAfter(g);g.insertAfter(l)}}else{var k=this.next(h);if(k.length){if(g[0]==k[0]){g.after(h)}else{h.insertAfter(g);g.insertBefore(k)}}else{var j=h.parent();h.insertAfter(g);j.append(g)}}this._updateLevel(h);var j=this.parent(h);this._setFirstLast(j.length?j:null,h);this._updateHidden(h);this._updateLevel(g);j=this.parent(g);this._setFirstLast(j.length?j:null,g);this._updateHidden(g);this._setOddEven(h.add(g));this._trigger(null,"swapped",i);this._success(null,i)}else{this._fail(null,i)}},_updateItemLevel:function(n,h,k){a.addRemoveClass(n[0],"aciTreeLevel"+k,"aciTreeLevel"+h);var g=n[0].firstChild;g.setAttribute("aria-level",k+1);var m=a.childrenByClass(g,"aciTreeEntry");if(h<k){g=m.parentNode;var l;for(var j=h;j<k;j++){l=d.document.createElement("DIV");g.appendChild(l);l.className="aciTreeBranch aciTreeLevel"+j;g=l}g.appendChild(m)}else{var l=m;for(var j=k;j<=h;j++){l=l.parentNode}l.removeChild(l.firstChild);l.appendChild(m)}},_updateChildLevel:function(i,g,h){this.children(i,false,true).each(this.proxy(function(j){var k=e(j);this._updateItemLevel(k,g,h);if(this.isInode(k)){this._updateChildLevel(k,g+1,h+1)}},true))},_updateLevel:function(g){var i=this.level(g);var h=d.parseInt(g.attr("class").match(/aciTreeLevel[0-9]+/)[0].match(/[0-9]+/));if(i!=h){this._updateItemLevel(g,h,i);this._updateChildLevel(g,h+1,i+1)}},moveUp:function(h,g){g=this._options(g);g.index=d.Math.max(this.getIndex(h)-1,0);this.setIndex(h,g)},moveDown:function(h,g){g=this._options(g);g.index=d.Math.min(this.getIndex(h)+1,this.siblings(h).length);this.setIndex(h,g)},moveFirst:function(h,g){g=this._options(g);g.index=0;this.setIndex(h,g)},moveLast:function(h,g){g=this._options(g);g.index=this.siblings(h).length;this.setIndex(h,g)},moveBefore:function(j,g){g=this._options(g,null,"movefail","wasbefore",j);var k=g.before;if(this.isItem(j)&&this.isItem(k)&&!this.isChildren(j,k)&&(j[0]!=k[0])){if(!this._trigger(j,"beforemove",g)){this._fail(j,g);return}if(this.prev(k,true)[0]==j[0]){this._notify(j,g)}else{var h=this.parent(j);var i=this.prev(j,true);if(!i.length){i=h.length?h:this.first()}j.insertBefore(k);if(h.length&&!this.hasChildren(h,true)){this.setLeaf(h)}this._updateLevel(j);this._setFirstLast(h.length?h:null);h=this.parent(j);this._setFirstLast(h.length?h:null,j.add(k));this._updateHidden(j);this._setOddEven(j.add(k).add(i));this._trigger(j,"moved",g);this._success(j,g)}}else{this._fail(j,g)}},moveAfter:function(j,g){g=this._options(g,null,"movefail","wasafter",j);var k=g.after;if(this.isItem(j)&&this.isItem(k)&&!this.isChildren(j,k)&&(j[0]!=k[0])){if(!this._trigger(j,"beforemove",g)){this._fail(j,g);return}if(this.next(k,true)[0]==j[0]){this._notify(j,g)}else{var h=this.parent(j);var i=this.prev(j,true);if(!i.length){i=h.length?h:this.first()}j.insertAfter(k);if(h.length&&!this.hasChildren(h,true)){this.setLeaf(h)}this._updateLevel(j);this._setFirstLast(h.length?h:null);h=this.parent(j);this._setFirstLast(h.length?h:null,j.add(k));this._updateHidden(j);this._setOddEven(j.add(k).add(i));this._trigger(j,"moved"
// selectable
(function(d,c,e){var b={selectable:true,multiSelectable:false,fullRow:false,textSelection:false};var f={__extend:function(){d.extend(this._instance,{focus:false});d.extend(this._private,{blurTimeout:null,spinPoint:null});this._super()},hasFocus:function(){return this._instance.focus},_selectableInit:function(){if(this._instance.jQuery.attr("tabindex")===e){this._instance.jQuery.attr("tabindex",0)}if(!this._instance.options.textSelection){this._selectable(false)}this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(k,i,j,g,h){switch(g){case"closed":var l=i.focused();if(i.isChildren(j,l)){i._focusOne(j)}i.children(j,true).each(i.proxy(function(m){var n=d(m);if(this.isSelected(n)){this.deselect(n)}},true));break}}).bind("focusin"+this._private.nameSpace,this.proxy(function(){c.clearTimeout(this._private.blurTimeout);if(!this.hasFocus()){this._instance.focus=true;a.addClass(this._instance.jQuery[0],"aciTreeFocus");this._trigger(null,"focused")}})).bind("focusout"+this._private.nameSpace,this.proxy(function(){c.clearTimeout(this._private.blurTimeout);this._private.blurTimeout=c.setTimeout(this.proxy(function(){if(this.hasFocus()){this._instance.focus=false;a.removeClass(this._instance.jQuery[0],"aciTreeFocus");this._trigger(null,"blurred")}}),10)})).bind("keydown"+this._private.nameSpace,this.proxy(function(j){if(!this.hasFocus()){return}var i=this.focused();if(i.length&&this.isBusy(i)){return false}var h=d([]);switch(j.which){case 65:if(this._instance.options.multiSelectable&&j.ctrlKey){var g=this.visible(this.enabled(this.children(null,true))).not(this.selected());g.each(this.proxy(function(k){this.select(d(k),{focus:false})},true));if(!this.focused().length){this._focusOne(this.visible(g,true).first())}j.preventDefault()}break;case 38:h=i.length?this._prev(i):this.first();break;case 40:h=i.length?this._next(i):this.first();break;case 37:if(i.length){if(this.isOpen(i)){h=i;this.close(i,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}else{h=this.parent(i)}}else{h=this._first()}break;case 39:if(i.length){if(this.isInode(i)&&this.isClosed(i)){h=i;this.open(i,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}else{h=this.first(i)}}else{h=this._first()}break;case 33:h=i.length?this._prevPage(i):this._first();break;case 34:h=i.length?this._nextPage(i):this._first();break;case 36:h=this._first();break;case 35:h=this._last();break;case 13:case 107:h=i;if(this.isInode(i)&&this.isClosed(i)){this.open(i,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}break;case 27:case 109:h=i;if(this.isOpen(i)){this.close(i,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}if(j.which==27){j.preventDefault()}break;case 32:h=i;if(this.isInode(i)&&!j.ctrlKey){this.toggle(i,{collapse:this._instance.options.collapse,expand:this._instance.options.expand,unique:this._instance.options.unique})}j.preventDefault();break;case 106:h=i;if(this.isInode(i)){this.open(i,{collapse:this._instance.options.collapse,expand:true,unique:this._instance.options.unique})}break}if(h.length){if(this._instance.options.multiSelectable&&!j.ctrlKey&&!j.shiftKey){this._unselect(this.selected().not(h))}if(!this.isVisible(h)){this.setVisible(h)}if(j.ctrlKey){if((j.which==32)&&this.isEnabled(h)){if(this.isSelected(h)){this.deselect(h)}else{this.select(h)}this._private.spinPoint=h}else{this._focusOne(h)}}else{if(j.shiftKey){this._shiftSelect(h)}else{if(!this.isSelected(h)&&this.isEnabled(h)){this.select(h)}else{this._focusOne(h)}this._private.spinPoint=h}}return false}}));this._fullRow(this._instance.options.fullRow);this._multiSelectable(this._instance.options.multiSelectable)},_fullRow:function(g){this._instance.jQuery.off(this._private.nameSpace,".aciTreeLine,.aciTreeItem").off(this._private.nameSpace,".aciTreeItem");this._instance.jQuery.on("mousedown"+this._private.nameSpace+" click"+this._priva
// checkbox (works best with selectable)
(function(e,d,f){var c={checkbox:false,checkboxChain:true,checkboxBreak:true,checkboxClick:false};var b={_checkboxInit:function(){this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(k,i,j,g,h){switch(g){case"loaded":i._checkboxLoad(j);break}}).bind("keydown"+this._private.nameSpace,this.proxy(function(h){switch(h.which){case 32:if(this.extSelectable&&this.extSelectable()&&!h.ctrlKey){var g=this.focused();if(this.hasCheckbox(g)&&this.isEnabled(g)){if(this.isChecked(g)){this.uncheck(g)}else{this.check(g)}h.stopImmediatePropagation();h.preventDefault()}}break}})).on("click"+this._private.nameSpace,".aciTreeItem",this.proxy(function(h){if(!this._instance.options.checkboxClick||e(h.target).is(".aciTreeCheck")){var g=this.itemFrom(h.target);if(this.hasCheckbox(g)&&this.isEnabled(g)&&(!this.extSelectable||!this.extSelectable()||(!h.ctrlKey&&!h.shiftKey))){if(this.isChecked(g)){this.uncheck(g)}else{this.check(g)}h.preventDefault()}}}))},_initHook:function(){if(this.extCheckbox()){this._checkboxInit()}this._super()},_itemHook:function(i,j,g,k){if(this.extCheckbox()){var h=this.extRadio&&this.hasRadio(j);if(!h&&(g.checkbox||((g.checkbox===f)&&(!this.extRadio||!this.extRadio())))){this._checkboxDOM.add(j,g)}}this._super(i,j,g,k)},_checkboxDOM:{add:function(k,g){a.addClass(k[0],g.checked?["aciTreeCheckbox","aciTreeChecked"]:"aciTreeCheckbox");var l=a.childrenByClass(k[0].firstChild,"aciTreeText");var j=l.parentNode;var i=d.document.createElement("LABEL");var h=d.document.createElement("SPAN");h.className="aciTreeCheck";i.appendChild(h);i.appendChild(l);j.appendChild(i);k[0].firstChild.setAttribute("aria-checked",!!g.checked)},remove:function(i){a.removeClass(i[0],["aciTreeCheckbox","aciTreeChecked","aciTreeTristate"]);var j=a.childrenByClass(i[0].firstChild,"aciTreeText");var g=j.parentNode;var h=g.parentNode;h.replaceChild(j,g);i[0].firstChild.removeAttribute("aria-checked")},check:function(g,h){a.toggleListClass(g.toArray(),"aciTreeChecked",h,function(i){i.firstChild.setAttribute("aria-checked",h)})},tristate:function(g,h){a.toggleListClass(g.toArray(),"aciTreeTristate",h)}},_checkboxLoad:function(g){if(this._instance.options.checkboxChain===false){return}var h=f;if(this.hasCheckbox(g)){if(this.isChecked(g)){if(!this.checkboxes(this.children(g,false,true),true).length){h=true}}else{h=false}}this._checkboxUpdate(g,h)},_checkboxChildren:function(h){if(this._instance.options.checkboxBreak){var i=[];var j=this.proxy(function(l){var k=this.children(l,false,true);k.each(this.proxy(function(m){var n=e(m);if(this.hasCheckbox(n)){i.push(m);j(n)}},true))});j(h);return e(i)}else{var g=this.children(h,true,true);return this.checkboxes(g)}},_checkboxUpdate:function(j,k){var g=this.proxy(function(p,o,q){var l=this.children(p,false,true);var n=0;var m=0;l.each(this.proxy(function(s){var u=e(s);var t={total:0,checked:0};if(this.hasCheckbox(u)){if((q!==f)&&(this._instance.options.checkboxChain!==-1)){this._checkboxDOM.check(u,q)}n++;if(this.isChecked(u)){m++}g(u,t,q)}else{if(this._instance.options.checkboxBreak){var r={total:0,checked:0};g(u,r)}else{g(u,t,q)}}n+=t.total;m+=t.checked},true));if(p){this._checkboxDOM.tristate(p,(m>0)&&(m!=n));o.total+=n;o.checked+=m}});var i={total:0,checked:0};g(j,i,k);var h=this.proxy(function(p,o,q){var m=this.parent(p);if(m.length){if(!o){var l=this._checkboxChildren(m);var n=this.checkboxes(l,true).length;var o=(n>0)&&(n!=l.length)}if(this.hasCheckbox(m)){if((q!==f)&&(this._instance.options.checkboxChain!==1)){this._checkboxDOM.check(m,o?true:q)}this._checkboxDOM.tristate(m,o);h(m,o,q)}else{if(this._instance.options.checkboxBreak){h(m)}else{h(m,o,q)}}}});h(j,f,k)},hasCheckbox:function(g){return g&&a.hasClass(g[0],"aciTreeCheckbox")},addCheckbox:function(h,g){g=this._options(g,"checkboxadded","addcheckboxfail","wascheckbox",h);if(this.isItem(h)){if(!this._trigger(h,"beforeaddcheckbox",g)){this._fail(h,g);return}if(this.hasCheckbox(h)){this._notify(h,g)}else{var i=function(){this._checkboxDOM.add(h,{});this._success(h,g)};if(this.extRadio&&this.hasRadio(h)){this.removeRadio(h,this._inner(g,{succ
// radio (works best with selectable)
(function(e,c,f){var b={radio:false,radioChain:true,radioBreak:true,radioClick:false};var d={_radioInit:function(){this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(k,i,j,g,h){switch(g){case"loaded":if(j){i._radioLoad(j)}break}}).bind("keydown"+this._private.nameSpace,this.proxy(function(h){switch(h.which){case 32:if(this.extSelectable&&this.extSelectable()&&!h.ctrlKey){var g=this.focused();if(this.hasRadio(g)&&this.isEnabled(g)){if(!this.isChecked(g)){this.check(g)}h.stopImmediatePropagation();h.preventDefault()}}break}})).on("click"+this._private.nameSpace,".aciTreeItem",this.proxy(function(h){if(!this._instance.options.radioClick||e(h.target).is(".aciTreeCheck")){var g=this.itemFrom(h.target);if(this.hasRadio(g)&&this.isEnabled(g)&&(!this.extSelectable||!this.extSelectable()||(!h.ctrlKey&&!h.shiftKey))){if(!this.isChecked(g)){this.check(g)}h.preventDefault()}}}))},_initHook:function(){if(this.extRadio()){this._radioInit()}this._super()},_itemHook:function(h,i,g,k){if(this.extRadio()){var j=this.extCheckbox&&this.hasCheckbox(i);if(!j&&(g.radio||((g.radio===f)&&(!this.extCheckbox||!this.extCheckbox())))){this._radioDOM.add(i,g)}}this._super(h,i,g,k)},_radioDOM:{add:function(k,g){a.addClass(k[0],g.checked?["aciTreeRadio","aciTreeChecked"]:"aciTreeRadio");var l=a.childrenByClass(k[0].firstChild,"aciTreeText");var j=l.parentNode;var i=c.document.createElement("LABEL");var h=c.document.createElement("SPAN");h.className="aciTreeCheck";i.appendChild(h);i.appendChild(l);j.appendChild(i);k[0].firstChild.setAttribute("aria-checked",!!g.checked)},remove:function(i){a.removeClass(i[0],["aciTreeRadio","aciTreeChecked"]);var j=a.childrenByClass(i[0].firstChild,"aciTreeText");var g=j.parentNode;var h=g.parentNode;h.replaceChild(j,g);i[0].firstChild.removeAttribute("aria-checked")},check:function(g,h){a.toggleListClass(g.toArray(),"aciTreeChecked",h,function(i){i.firstChild.setAttribute("aria-checked",h)})}},_radioLoad:function(g){if(!this._instance.options.radioChain){return}if(this.hasRadio(g)){if(this.isChecked(g)){if(!this.radios(this.children(g,false,true),true).length){this._radioUpdate(g,true)}}else{this._radioUpdate(g)}}},_radioChildren:function(h){if(this._instance.options.radioBreak){var i=[];var j=this.proxy(function(l){var k=this.children(l,false,true);k.each(this.proxy(function(m){var n=e(m);if(this.hasRadio(n)){i.push(m);j(n)}},true))});j(h);return e(i)}else{var g=this.children(h,true,true);return this.radios(g)}},_radioLevel:function(g){var h=[];g.each(this.proxy(function(j){var k=e(j);var i=this.children(k,false,true);i.each(this.proxy(function(l){var m=e(l);if(!this._instance.options.radioBreak||this.hasRadio(m)){h.push(l)}},true))},true));return e(h)},_radioUpdate:function(i,j){var k=this.proxy(function(l){var m=this.siblings(l,true);this._radioDOM.check(this.radios(m),false);m.each(this.proxy(function(n){var o=e(n);if(!this._instance.options.radioBreak||this.hasRadio(o)){this._radioDOM.check(this._radioChildren(o),false)}},true))});if(j){k(i)}var g=this.proxy(function(n){var l=this._radioLevel(n);var o=this.radios(l);if(o.length){var m=this.radios(l,true);if(m.length){m=m.first();this._radioDOM.check(m,true);k(m);g(m)}else{m=o.first();this._radioDOM.check(m,true);k(m);g(m)}}else{if(l.length){g(l)}}});if(j){g(i)}else{this._radioDOM.check(this._radioChildren(i),false)}var h=this.proxy(function(m){var l=this.parent(m);if(l.length){if(this.hasRadio(l)){if(j){k(l)}this._radioDOM.check(l,j);h(l)}else{if(!this._instance.options.radioBreak){if(j){k(l)}h(l)}}}});if(j!==f){h(i)}},hasRadio:function(g){return g&&a.hasClass(g[0],"aciTreeRadio")},addRadio:function(h,g){g=this._options(g,"radioadded","addradiofail","wasradio",h);if(this.isItem(h)){if(!this._trigger(h,"beforeaddradio",g)){this._fail(h,g);return}if(this.hasRadio(h)){this._notify(h,g)}else{var i=function(){this._radioDOM.add(h,{});this._success(h,g)};if(this.extCheckbox&&this.hasCheckbox(h)){this.removeCheckbox(h,this._inner(g,{success:i,fail:g.fail}))}else{i.apply(this)}}}else{this._fail(h,g)}},removeRadio:function(h,g){g=this._options(g,"radior
// column
(function(e,c,f){var b={columnData:[]};var d={__extend:function(){e.extend(this._private,{propsIndex:{}});this._super()},_initHook:function(){if(this._instance.options.columnData.length){var j=false,h;for(var g in this._instance.options.columnData){h=this._instance.options.columnData[g];if(h.width!==f){this._updateCss(".aciTree.aciTree"+this._instance.index+" .aciTreeColumn"+g,"width:"+h.width+"px;");j=true}this._private.propsIndex[h.props]=g}if(j){this._updateWidth()}}this._super()},_getCss:function(m,p,o){var h="_getCss_"+c.String(m).replace(/[^a-z0-9_-]/ig,"_");var l=e("body").find("#"+h);if(!l.length){if(m instanceof Array){var g="",j="";for(var k in m){g+='<div class="'+m[k]+'">';j+="</div>"}g+=j}else{var g='<div class="'+m+'"></div>'}e("body").append('<div id="'+h+'" style="position:relative;display:inline-block;width:0px;height:0px;line-height:0px;overflow:hidden">'+g+"</div>");l=e("body").find("#"+h)}var n=l.find("*:last").css(p);if(o){n=parseInt(n);if(isNaN(n)){n=null}}return n},_updateCss:function(i,g){var k="_updateCss_"+c.String(i).replace(">","_gt_").replace(/[^a-z0-9_-]/ig,"_");var h='<style id="'+k+'" type="text/css">'+i+"{"+g+"}</style>";var j=e("body").find("#"+k);if(j.length){j.replaceWith(h)}else{e("body").prepend(h)}},getWidth:function(g){if((g>=0)&&(g<this.columns())){return this._getCss(["aciTree aciTree"+this._instance.index,"aciTreeColumn"+g],"width",true)}return null},setWidth:function(g,h){if((g>=0)&&(g<this.columns())){this._updateCss(".aciTree.aciTree"+this._instance.index+" .aciTreeColumn"+g,"width:"+h+"px;");this._updateWidth()}},_updateWidth:function(){var j=0;for(var g in this._instance.options.columnData){if(this.isColumn(g)){j+=this.getWidth(g)}}var h=this._getCss(["aciTree","aciTreeIcon"],"width",true);j+=this._getCss(["aciTree","aciTreeItem"],"padding-left",true)+this._getCss(["aciTree","aciTreeItem"],"padding-right",true);this._updateCss(".aciTree.aciTree"+this._instance.index+" .aciTreeItem","margin-right:"+(h+j)+"px;");this._updateCss(".aciTree[dir=rtl].aciTree"+this._instance.index+" .aciTreeItem","margin-right:0;margin-left:"+(h+j)+"px;")},isColumn:function(g){if((g>=0)&&(g<this.columns())){return this._getCss(["aciTree aciTree"+this._instance.index,"aciTreeColumn"+g],"display")!="none"}return false},columnIndex:function(g){if(this._private.propsIndex[g]!==f){return this._private.propsIndex[g]}return -1},columns:function(){return this._instance.options.columnData.length},toggleColumn:function(h,g){if((h>=0)&&(h<this.columns())){if(g===f){var g=!this.isColumn(h)}this._updateCss(".aciTree.aciTree"+this._instance.index+" .aciTreeColumn"+h,"display:"+(g?"inherit":"none")+";");this._updateWidth()}},_itemHook:function(l,m,h,o){if(this.columns()){var g=a.childrenByClass(m[0].firstChild,"aciTreeEntry"),n,k;for(var j in this._instance.options.columnData){n=this._instance.options.columnData[j];k=this._createColumn(h,n,j);g.insertBefore(k,g.firstChild)}}this._super(l,m,h,o)},_createColumn:function(g,j,h){var k=j.props&&(g[j.props]!==f)?g[j.props]:((j.value===f)?"":j.value);var i=c.document.createElement("DIV");i.className="aciTreeColumn aciTreeColumn"+h;i.innerHTML=k.length?k:"&nbsp;";return i},setColumn:function(h,g){g=this._options(g,"columnset","columnfail","wascolumn",h);if(this.isItem(h)&&(g.index>=0)&&(g.index<this.columns())){if(!this._trigger(h,"beforecolumn",g)){this._fail(h,g);return}var i=this.itemData(h);g.oldValue=i[this._instance.options.columnData[g.index].props];if(g.value==g.oldValue){this._notify(h,g)}else{h.children(".aciTreeLine").find(".aciTreeColumn"+g.index).html(g.value);i[this._instance.options.columnData[g.index].props]=g.value;this._success(h,g)}}else{this._fail(h,g)}},getColumn:function(h,g){if((g>=0)&&(g<this.columns())){var i=this.itemData(h);return i?i[this._instance.options.columnData[g].props]:null}return null}};aciPluginClass.plugins.aciTree=aciPluginClass.plugins.aciTree.extend(d,"aciTreeColumn");aciPluginClass.defaults("aciTree",b);var a=aciPluginClass.plugins.aciTree_dom})(jQuery,this);
// editable (works best with selectable)
(function(d,c,f){var b={editable:false,editDelay:250};var e={__extend:function(){d.extend(this._private,{editTimestamp:null});this._super()},_editableInit:function(){this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(k,i,j,g,h){switch(g){case"blurred":var j=i.edited();if(j.length){i.endEdit()}break;case"deselected":if(i.isEdited(j)){i.endEdit()}break}}).bind("click"+this._private.nameSpace,this.proxy(function(){var g=this.edited();if(g.length){this.endEdit()}})).bind("keydown"+this._private.nameSpace,this.proxy(function(h){switch(h.which){case 113:if(this.extSelectable&&this.extSelectable()){var g=this.focused();if(g.length&&!this.isEdited(g)&&this.isEnabled(g)){this.edit(g);h.preventDefault()}}break}})).on("mousedown"+this._private.nameSpace,".aciTreeItem",this.proxy(function(g){if(d(g.target).is(".aciTreeItem,.aciTreeText")){this._private.editTimestamp=d.now()}})).on("mouseup"+this._private.nameSpace,".aciTreeItem",this.proxy(function(h){if(d(h.target).is(".aciTreeItem,.aciTreeText")){var i=d.now()-this._private.editTimestamp;if((i>this._instance.options.editDelay)&&(i<this._instance.options.editDelay*4)){var g=this.itemFrom(h.target);if((!this.extSelectable||!this.extSelectable()||(this.isFocused(g)&&(this.selected().length==1)))&&this.isEnabled(g)){this.edit(g)}}}})).on("keydown"+this._private.nameSpace,"input[type=text]",this.proxy(function(g){switch(g.which){case 13:this.itemFrom(g.target).focus();this.endEdit();g.stopPropagation();break;case 27:this.itemFrom(g.target).focus();this.endEdit({save:false});g.stopPropagation();g.preventDefault();break;case 38:case 40:case 37:case 39:case 33:case 34:case 36:case 35:case 32:case 107:case 109:case 106:g.stopPropagation();break}})).on("blur"+this._private.nameSpace,"input[type=text]",this.proxy(function(){if(!this.extSelectable||!this.extSelectable()){this.endEdit()}})).on("click"+this._private.nameSpace+" dblclick"+this._private.nameSpace,"input[type=text]",function(g){g.stopPropagation()})},_initHook:function(){if(this.extEditable()){this._editableInit()}this._super()},_editableDOM:{add:function(h){var g=h.addClass("aciTreeEdited").children(".aciTreeLine");g.find(".aciTreeText").html('<input id="aciTree-editable-tree-item" type="text" value="" style="-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;-o-user-select:text;user-select:text" />');g.find("label").attr("for","aciTree-editable-tree-item");this._editableDOM.get(h).val(this.getLabel(h))},remove:function(i,h){var g=i.removeClass("aciTreeEdited").children(".aciTreeLine");g.find(".aciTreeText").html(this.getLabel(i));g.find("label").removeAttr("for")},get:function(g){return g?g.children(".aciTreeLine").find("input[type=text]"):d([])}},edited:function(){return this._instance.jQuery.find(".aciTreeEdited")},isEdited:function(g){return g&&a.hasClass(g[0],"aciTreeEdited")},_focusEdit:function(h){var i=this._editableDOM.get(h).focus().trigger("click")[0];if(i){if(typeof i.selectionStart=="number"){i.selectionStart=i.selectionEnd=i.value.length}else{if(i.createTextRange!==f){var g=i.createTextRange();g.collapse(false);g.select()}}}},setLabel:function(h,g){if(!this.extEditable()||!this.isEdited(h)){this._super(h,g)}},edit:function(h,g){g=this._options(g,"edit","editfail","wasedit",h);if(this.extEditable()&&this.isItem(h)){if(!this._trigger(h,"beforeedit",g)){this._fail(h,g);return}var i=this.edited();if(i.length){if(i[0]==h[0]){this._notify(h,g);return}else{this._editableDOM.remove.call(this,i);this._trigger(i,"endedit",g)}}this._editableDOM.add.call(this,h);this._focusEdit(h);this._success(h,g)}else{this._fail(h,g)}},endEdit:function(g){var h=this.edited();g=this._options(g,"edited","endeditfail","endedit",h);if(this.extEditable()&&this.isItem(h)){if(!this._trigger(h,"beforeendedit",g)){this._fail(h,g);return}var i=this._editableDOM.get(h).val();this._editableDOM.remove.call(this,h);if((g.save===f)||g.save){this.setLabel(h,{label:i});this._success(h,g)}else{this._notify(h,g)}}else{this._fail(h,g)}},extEditable:function(){return this._instance.options.editable},option:function(g,h){if(th
// persist (require utils extension & jStorage plugin)
(function(c,b,e){var a={persist:null};var d={__extend:function(){c.extend(this._private,{selectTimeout:null,focusTimeout:null,openTimeout:null});this._super()},_initPersist:function(){this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(j,h,i,f,g){if(g.uid=="ui.persist"){return}switch(f){case"init":h._persistRestore();break;case"selected":case"deselected":h._persistLater("selected");break;case"focus":case"blur":h._persistLater("focused");break;case"opened":case"closed":h._persistLater("opened");break}})},_initHook:function(){if(this.extPersist()){this._initPersist()}this._super()},_persistLater:function(f){switch(f){case"selected":b.clearTimeout(this._private.selectTimeout);this._private.selectTimeout=b.setTimeout(this.proxy(function(){this._persistSelected()}),250);break;case"focused":b.clearTimeout(this._private.focusTimeout);this._private.focusTimeout=b.setTimeout(this.proxy(function(){this._persistFocused()}),250);break;case"opened":b.clearTimeout(this._private.openTimeout);this._private.openTimeout=b.setTimeout(this.proxy(function(){this._persistOpened()}),250);break}},_persistRestore:function(){var f=new this._queue(this,this._instance.options.queue);var g=new this._task(f,function(k){if(this.extSelectable&&this.extSelectable()){var m=c.jStorage.get("aciTree_"+this._instance.options.persist+"_selected");if(m instanceof Array){for(var l in m){(function(i){f.push(function(o){this.searchPath(null,{success:function(p){this.select(p,{uid:"ui.persist",success:function(){o()},fail:o,focus:false})},fail:o,path:i.split(";")})})})(m[l]);if(!this._instance.options.multiSelectable){break}}}var n=c.jStorage.get("aciTree_"+this._instance.options.persist+"_focused");if(n instanceof Array){for(var l in n){(function(i){f.push(function(o){this.searchPath(null,{success:function(p){this.focus(p,{uid:"ui.persist",success:function(q){this.setVisible(q,{center:true});o()},fail:o})},fail:o,path:i.split(";")})})})(n[l])}}}k()});var j=c.jStorage.get("aciTree_"+this._instance.options.persist+"_opened");if(j instanceof Array){for(var h in j){(function(i){g.push(function(k){this.searchPath(null,{success:function(l){this.open(l,{uid:"ui.persist",success:k,fail:k})},fail:k,path:i.split(";"),load:true})})})(j[h])}}},_persistSelected:function(){if(this.extSelectable&&this.extSelectable()){var f=[];this.selected().each(this.proxy(function(g){var h=c(g);var i=this.pathId(h);i.push(this.getId(h));f.push(i.join(";"))},true));c.jStorage.set("aciTree_"+this._instance.options.persist+"_selected",f)}},_persistFocused:function(){if(this.extSelectable&&this.extSelectable()){var f=[];this.focused().each(this.proxy(function(g){var h=c(g);var i=this.pathId(h);i.push(this.getId(h));f.push(i.join(";"))},true));c.jStorage.set("aciTree_"+this._instance.options.persist+"_focused",f)}},_persistOpened:function(){var f=[];this.inodes(this.children(null,true),true).each(this.proxy(function(g){var h=c(g);if(this.isOpenPath(h)){var i=this.pathId(h);i.push(this.getId(h));f.push(i.join(";"))}},true));c.jStorage.set("aciTree_"+this._instance.options.persist+"_opened",f)},isPersist:function(){if(this.extPersist()){var f=c.jStorage.get("aciTree_"+this._instance.options.persist+"_selected");if(f instanceof Array){return true}var g=c.jStorage.get("aciTree_"+this._instance.options.persist+"_focused");if(g instanceof Array){return true}var h=c.jStorage.get("aciTree_"+this._instance.options.persist+"_opened");if(h instanceof Array){return true}}return false},unpersist:function(){if(this.extPersist()){c.jStorage.deleteKey("aciTree_"+this._instance.options.persist+"_selected");c.jStorage.deleteKey("aciTree_"+this._instance.options.persist+"_focused");c.jStorage.deleteKey("aciTree_"+this._instance.options.persist+"_opened")}},extPersist:function(){return this._instance.options.persist},option:function(f,h){var g=this.extPersist();this._super(f,h);if(this.extPersist()!=g){if(g){this._donePersist()}else{this._initPersist()}}},_donePersist:function(){this._instance.jQuery.unbind(this._private.nameSpace)},_destroyHook:function(f){if(f){this._donePersist()}this._super(f)
// hash (require utils extension & aciFragment plugin)
(function(d,c,e){var a={selectHash:null,openHash:null};var b={__extend:function(){d.extend(this._private,{lastSelect:null,lastOpen:null,hashApi:null});this._super()},_hashInit:function(){this._instance.jQuery.aciFragment();this._private.hashApi=this._instance.jQuery.aciFragment("api");this._instance.jQuery.bind("acitree"+this._private.nameSpace,function(j,h,i,f,g){switch(f){case"init":h._hashRestore();break}}).bind("acifragment"+this._private.nameSpace,this.proxy(function(h,g,f){h.stopPropagation();this._hashRestore()}))},_initHook:function(){if(this.extHast()){this._hashInit()}this._super()},_hashRestore:function(){var f=this._instance.queue;var i=function(l){for(var k in l){(function(m){f.push(function(n){this.search(null,{success:function(o){this.open(o,{uid:"ui.hash",success:n,fail:n})},fail:n,search:m})})})(l[k])}};if(this._instance.options.openHash){var h=this._private.hashApi.get(this._instance.options.openHash,"");if(h.length&&(h!=this._private.lastOpen)){this._private.lastOpen=h;var j=h.split(";");i(j)}}if(this._instance.options.selectHash&&this.extSelectable&&this.extSelectable()){var h=this._private.hashApi.get(this._instance.options.selectHash,"");if(h.length&&(h!=this._private.lastSelect)){this._private.lastSelect=h;var j=h.split(";");var g=j.pop();i(j);if(g){f.push(function(k){this.search(null,{success:function(l){this.select(l,{uid:"ui.hash",success:function(m){this.setVisible(m,{center:true});k()},fail:k})},fail:k,search:g})})}}}},extHast:function(){return this._instance.options.selectHash||this._instance.options.openHash},option:function(f,g){var h=this.extHast();this._super(f,g);if(this.extHast()!=h){if(h){this._hashDone()}else{this._hashInit()}}},_hashDone:function(){this._instance.jQuery.unbind(this._private.nameSpace);this._private.hashApi=null;this._instance.jQuery.aciFragment("destroy")},_destroyHook:function(f){if(f){this._hashDone()}this._super(f)}};aciPluginClass.plugins.aciTree=aciPluginClass.plugins.aciTree.extend(b,"aciTreeHash");aciPluginClass.defaults("aciTree",a)})(jQuery,this);
// sortable (require utils extension & aciSortable plugin)
(function(d,c,e){var a={sortable:false,sortDelay:750,sortDrag:function(h,j,i,g){if(!i){var f=this.getLabel(h);if(this._private.dragDrop&&(this._private.dragDrop.length>1)){f+=" and #"+(this._private.dragDrop.length-1)+" more"}g.html(f)}},sortValid:function(j,h,k,g,l,i){var f=this.getLabel(j);if(this._private.dragDrop.length>1){f+=" and #"+(this._private.dragDrop.length-1)+" more"}if(g){i.html("move "+f+" to "+this.getLabel(this.itemFrom(h)));l.removeClass("aciTreeAfter aciTreeBefore")}else{if(k!==null){if(k){i.html("move "+f+" before "+this.getLabel(h));l.removeClass("aciTreeAfter").addClass("aciTreeBefore")}else{i.html("move "+f+" after "+this.getLabel(h));l.removeClass("aciTreeBefore").addClass("aciTreeAfter")}}}}};var b={__extend:function(){d.extend(this._private,{openTimeout:null,dragDrop:null});this._super()},_sortableInit:function(){this._instance.jQuery.aciSortable({container:".aciTreeUl",item:".aciTreeLi",child:50,childHolder:'<ul class="aciTreeUl aciTreeChild"></ul>',childHolderSelector:".aciTreeChild",placeholder:'<li class="aciTreeLi aciTreePlaceholder"><div></div></li>',placeholderSelector:".aciTreePlaceholder",helper:'<div class="aciTreeHelper"></div>',helperSelector:".aciTreeHelper",before:this.proxy(function(f){if(!this._initDrag(f)){return false}if(!this._trigger(f,"beforedrag")){this._trigger(f,"dragfail");return false}return true}),start:this.proxy(function(g,h,f){this._instance.jQuery.addClass("aciTreeDragDrop");f.css({opacity:1}).html(this.getLabel(g))}),drag:this.proxy(function(g,i,h,f){if(!h){c.clearTimeout(this._private.openTimeout)}if(this._instance.options.sortDrag){this._instance.options.sortDrag.apply(this,arguments)}}),valid:this.proxy(function(j,h,k,g,l,i){c.clearTimeout(this._private.openTimeout);if(!this._checkDrop(j,h,k,g,l,i)){return false}var f=this._options({hover:h,before:k,isContainer:g,placeholder:l,helper:i});if(!this._trigger(j,"checkdrop",f)){return false}if(this.isInode(h)&&!this.isOpen(h)){this._private.openTimeout=c.setTimeout(this.proxy(function(){this.open(h)}),this._instance.options.sortDelay)}if(this._instance.options.sortValid){this._instance.options.sortValid.apply(this,arguments)}return true}),create:this.proxy(function(g,h,f){if(this.isLeaf(f)){f.append(g._instance.options.childHolder);return true}return false},true),end:this.proxy(function(q,k,p,g){c.clearTimeout(this._private.openTimeout);var r={placeholder:p,helper:g};r=this._options(r,"sorted","dropfail",null,q);if(p.parent().length){var i=this.prev(p,true);if(i.length){p.detach();var l=d(this._private.dragDrop.get().reverse());this._private.dragDrop=null;l.each(this.proxy(function(s){this.moveAfter(d(s),this._inner(r,{success:r.success,fail:r.fail,after:i}))},true))}else{var j=this.next(p,true);if(j.length){p.detach();var l=d(this._private.dragDrop.get().reverse());this._private.dragDrop=null;l.each(this.proxy(function(s){this.moveBefore(d(s),this._inner(r,{success:r.success,fail:r.fail,before:j}))},true))}else{var o=this.parent(p);var f=p.parent();p.detach();f.remove();if(this.isLeaf(o)){var l=this._private.dragDrop;this.asChild(l.eq(0),this._inner(r,{success:function(){this._success(q,r);this.open(o);l.filter(":gt(0)").each(this.proxy(function(s){this.moveAfter(d(s),this._inner(r,{success:r.success,fail:r.fail,after:this.last(o)}))},true))},fail:r.fail,parent:o}))}else{this._fail(q,r)}}}}else{this._fail(q,r)}this._private.dragDrop=null;if(g.parent().length){var n=d(c).scrollTop();var h=d(c).scrollLeft();var m=q[0].getBoundingClientRect();g.animate({top:m.top+n,left:m.left+h,opacity:0},{complete:function(){g.detach()}})}this._instance.jQuery.removeClass("aciTreeDragDrop")})})},_initHook:function(){if(this.extSortable()){this._sortableInit()}this._super()},_parents:function(l){var h=l.length,k,g,f=[];for(var n=0;n<h-1;n++){k=l.eq(n);for(var m=n+1;m<h;m++){g=l.eq(m);if(this.isChildren(k,g)){f.push(l[m])}else{if(this.isChildren(g,k)){f.push(l[n])}}}}return l.not(f)},_initDrag:function(g){if(this.extSelectable&&this.extSelectable()){if(!this.hasFocus()){this._instance.jQuery.focus()}if(!this.isEnabled(g)){return fals