(function(n){n.extend(n.fn,{swapClass:function(n,t){var i=this.filter("."+n);return this.filter("."+t).removeClass(t).addClass(n),i.removeClass(n).addClass(t),this},replaceClass:function(n,t){return this.filter("."+n).removeClass(n).addClass(t).end()},hoverClass:function(t){return t=t||"hover",this.hover(function(){n(this).addClass(t)},function(){n(this).removeClass(t)})},heightToggle:function(n,t){n?this.animate({height:"toggle"},n,t):this.each(function(){jQuery(this)[jQuery(this).is(":hidden")?"show":"hide"]();t&&t.apply(this,arguments)})},heightHide:function(n,t){n?this.animate({height:"hide"},n,t):(this.hide(),t&&this.each(t))},prepareBranches:function(n){return n.prerendered||(this.filter(":last-child:not(ul)").addClass(t.last),this.filter((n.collapsed?"":"."+t.closed)+":not(."+t.open+")").find(">ul").hide()),this.filter(":has(>ul)")},applyClasses:function(i,r){if(this.filter(":has(>ul):not(:has(>a))").find(">span").unbind("click.treeview").bind("click.treeview",function(t){this==t.target&&r.apply(n(this).next())}).add(n("a",this)).hoverClass(),!i.prerendered){this.filter(":has(>ul:hidden)").addClass(t.expandable).replaceClass(t.last,t.lastExpandable);this.not(":has(>ul:hidden)").addClass(t.collapsable).replaceClass(t.last,t.lastCollapsable);var u=this.find("div."+t.hitarea);u.length||(u=this.prepend('<div class="'+t.hitarea+'"/>').find("div."+t.hitarea));u.removeClass().addClass(t.hitarea).each(function(){var t="";n.each(n(this).parent().attr("class").split(" "),function(){t+=this+"-hitarea "});n(this).addClass(t)})}this.find("div."+t.hitarea).click(r)},treeview:function(i){function h(i,r){function u(r){return function(){return f.apply(n("div."+t.hitarea,i).filter(function(){return r?n(this).parent("."+r).length:!0})),!1}}n("a:eq(0)",r).click(u(t.collapsable));n("a:eq(1)",r).click(u(t.expandable));n("a:eq(2)",r).click(u())}function f(){n(this).parent().find(">.hitarea").swapClass(t.collapsableHitarea,t.expandableHitarea).swapClass(t.lastCollapsableHitarea,t.lastExpandableHitarea).end().swapClass(t.collapsable,t.expandable).swapClass(t.lastCollapsable,t.lastExpandable).find(">ul").heightToggle(i.animated,i.toggle);i.unique&&n(this).parent().siblings().find(">.hitarea").replaceClass(t.collapsableHitarea,t.expandableHitarea).replaceClass(t.lastCollapsableHitarea,t.lastExpandableHitarea).end().replaceClass(t.collapsable,t.expandable).replaceClass(t.lastCollapsable,t.lastExpandable).find(">ul").heightHide(i.animated,i.toggle)}function c(){var t=[];r.each(function(i,r){t[i]=n(r).is(":has(>ul:visible)")?1:0});n.cookie(i.cookieId,t.join(""),i.cookieOptions)}function l(){var t=n.cookie(i.cookieId),u;t&&(u=t.split(""),r.each(function(t,i){n(i).find(">ul")[parseInt(u[t])?"show":"hide"]()}))}var o,r,e,u,s;i=n.extend({cookieId:"treeview"},i);i.toggle&&(o=i.toggle,i.toggle=function(){return o.apply(n(this).parent()[0],arguments)});this.data("toggler",f);this.addClass("treeview");r=this.find("li").prepareBranches(i);switch(i.persist){case"cookie":e=i.toggle;i.toggle=function(){c();e&&e.apply(this,arguments)};l();break;case"location":u=this.find("a").filter(function(){return this.href.toLowerCase()==location.href.toLowerCase()});u.length&&(s=u.addClass("selected").parents("ul, li").add(u.next()).show(),i.prerendered&&s.filter("li").swapClass(t.collapsable,t.expandable).swapClass(t.lastCollapsable,t.lastExpandable).find(">.hitarea").swapClass(t.collapsableHitarea,t.expandableHitarea).swapClass(t.lastCollapsableHitarea,t.lastExpandableHitarea))}return r.applyClasses(i,f),i.control&&(h(this,i.control),n(i.control).show()),this}});n.treeview={};var t=n.treeview.classes={open:"open",closed:"closed",expandable:"expandable",expandableHitarea:"expandable-hitarea",lastExpandableHitarea:"lastExpandable-hitarea",collapsable:"collapsable",collapsableHitarea:"collapsable-hitarea",lastCollapsableHitarea:"lastCollapsable-hitarea",lastCollapsable:"lastCollapsable",lastExpandable:"lastExpandable",last:"last",hitarea:"hitarea"}})(jQuery),function(n){function t(t,i,r,u){function f(t){var i=n("<li/>").attr("id",this.id||"").html("<span>"+this.text+"<\/span>").appendTo(t),r;this.classes&&i.children("span").addClass(this.classes);this.expanded&&i.addClass("open");(this.hasChildren||this.children&&this.children.length)&&(r=n("<ul/>").appendTo(i),this.hasChildren&&(i.addClass("hasChildren"),f.call({classes:"placeholder",text:"&nbsp;",children:[]},r)),this.children&&this.children.length&&n.each(this.children,f,[r]))}n.ajax(n.extend(!0,{url:t.url,dataType:"json",data:{root:i},success:function(t){r.empty();n.each(t,f,[r]);n(u).treeview({add:r})}},t.ajax))}var i=n.fn.treeview;n.fn.treeview=function(r){var u,f;return r.url?(u=this,u.children().size()||t(r,"source",this,u),f=r.toggle,i.call(this,n.extend({},r,{collapsed:!0,toggle:function(){var i=n(this),e;i.hasClass("hasChildren")&&(e=i.removeClass("hasChildren").find("ul"),t(r,this.id,e,u));f&&f.apply(this,arguments)}}))):i.apply(this,arguments)}}(jQuery),function(n){var t=n.treeview.classes,i=n.fn.treeview;n.fn.treeview=function(r){return(r=n.extend({},r),r.add)?this.trigger("add",[r.add]):r.remove?this.trigger("remove",[r.remove]):i.apply(this,arguments).bind("add",function(i,u){n(u).prev().removeClass(t.last).removeClass(t.lastCollapsable).removeClass(t.lastExpandable).find(">.hitarea").removeClass(t.lastCollapsableHitarea).removeClass(t.lastExpandableHitarea);n(u).find("li").andSelf().prepareBranches(r).applyClasses(r,n(this).data("toggler"))}).bind("remove",function(i,r){var f=n(r).prev(),u=n(r).parent();n(r).remove();f.filter(":last-child").addClass(t.last).filter("."+t.expandable).replaceClass(t.last,t.lastExpandable).end().find(">.hitarea").replaceClass(t.expandableHitarea,t.lastExpandableHitarea).end().filter("."+t.collapsable).replaceClass(t.last,t.lastCollapsable).end().find(">.hitarea").replaceClass(t.collapsableHitarea,t.lastCollapsableHitarea);u.is(":not(:has(>))")&&u[0]!=this&&(u.parent().removeClass(t.collapsable).removeClass(t.expandable),u.siblings(".hitarea").andSelf().remove())})}}(jQuery),function(n){window.Node&&Node.prototype&&!Node.prototype.contains&&(Node.prototype.contains=function(n){return!!(this.compareDocumentPosition(n)&16)});n.widget("ui.sortableTree",n.extend(n.ui.mouse,{init:function(){var t=this,n=this.options;this.containerCache={};this.element.addClass("ui-sortableTree");this.refresh();/(relative|absolute|fixed)/.test(this.element.css("position"))||this.element.css("position","relative");this.offset=this.element.offset();this.mouseInit();n.cursorAt&&n.cursorAt.constructor==Array&&(n.cursorAt={left:n.cursorAt[0],top:n.cursorAt[1]})},plugins:{},ui:function(n){return{helper:(n||this).helper,position:(n||this).position.current,absolutePosition:(n||this).position.absolute,instance:this,options:this.options,element:this.element,item:(n||this).currentItem,sender:n?n.element:null}},propagate:function(t,i,r){n.ui.plugin.call(this,t,[i,this.ui(r)]);this.element.triggerHandler(t=="sort"?t:"sort"+t,[i,this.ui(r)],this.options[t])},serialize:function(t){var r=n(this.options.items,this.element).not(".ui-sortableTree-helper"),i=[];return t=t||{},r.each(function(){var r=(n(this).attr(t.attribute||"id")||"").match(t.expression||/(.+)[-=_](.+)/);r&&i.push((t.key||r[1])+"[]="+(t.key?r[1]:r[2]))}),i.join("&")},toArray:function(t){var r=n(this.options.items,this.element).not(".ui-sortableTree-helper"),i=[];return r.each(function(){i.push(n(this).attr(t||"id"))}),i},enable:function(){this.element.removeClass("ui-sortableTree-disabled");this.options.disabled=!1},disable:function(){this.element.addClass("ui-sortableTree-disabled");this.options.disabled=!0},intersectsWith:function(n){var t=this.position.absolute.left-10,f=t+10,i=this.position.absolute.top-10,e=i+10,r=n.left,o=r+n.width,u=n.top,s=u+n.height;return r<t+this.helperProportions.width/2&&f-this.helperProportions.width/2<o&&u<i+this.helperProportions.height/2&&e-this.helperProportions.height/2<s},intersectsWithEdge:function(n){var t=this.position.absolute.top-10,r=t+10,i=n.top,u=i+n.height;return this.intersectsWith(n.item.parents(".ui-sortableTree").data("sortableTree").containerCache)?(i<t+this.helperProportions.height/2&&r-this.helperProportions.height/2<u)?r>i&&t<i?1:t<u&&r>u?2:!1:!1:!1},refresh:function(){this.refreshItems();this.refreshPositions()},refreshItems:function(){var e,r,f,u,i,t;if(this.items=[],this.containers=[this],e=this.items,r=[n(this.options.items,this.element)],this.options.connectWith)for(t=this.options.connectWith.length-1;t>=0;t--)for(f=n(this.options.connectWith[t]),u=f.length-1;u>=0;u--)i=n.data(f[u],"sortableTree"),i&&!i.options.disabled&&(r.push(n(i.options.items,i.element)),this.containers.push(i));for(t=r.length-1;t>=0;t--)r[t].each(function(){n.data(this,"sortableTree-item",!0);e.push({item:n(this),width:0,height:0,left:0,top:0})})},refreshPositions:function(n){for(var i,t=this.items.length-1;t>=0;t--)n||(this.items[t].height=this.items[t].item.outerHeight()),this.items[t].top=this.items[t].item.offset().top;for(t=this.containers.length-1;t>=0;t--)i=this.containers[t].element.offset(),this.containers[t].containerCache.left=i.left,this.containers[t].containerCache.top=i.top,this.containers[t].containerCache.width=this.containers[t].element.outerWidth(),this.containers[t].containerCache.height=this.containers[t].element.outerHeight()},destroy:function(){this.element.removeClass("ui-sortableTree ui-sortableTree-disabled").removeData("sortableTree").unbind(".sortableTree");this.mouseDestroy();for(var n=this.items.length-1;n>=0;n--)this.items[n].item.removeData("sortableTree-item")},contactContainers:function(n){for(var i,u,t=this.containers.length-1;t>=0;t--)if(this.intersectsWith(this.containers[t].containerCache)){if(!this.containers[t].containerCache.over){if(this.currentContainer!=this.containers[t]){var f=1e4,r=null,e=this.position.absolute.top;for(i=this.items.length-1;i>=0;i--)this.containers[t].element[0].contains(this.items[i].item[0])&&(u=this.items[i].top,Math.abs(u-e)<f&&(f=Math.abs(u-e),r=this.items[i]));r?this.rearrange(n,r):this.rearrange(n,null,this.containers[t].element);this.propagate("change",n);this.containers[t].propagate("change",n,this);this.currentContainer=this.containers[t]}this.containers[t].propagate("over",n,this);this.containers[t].containerCache.over=1}}else this.containers[t].containerCache.over&&(this.containers[t].propagate("out",n,this),this.containers[t].containerCache.over=0)},mouseStart:function(t){var i,e,f,r,u;if(this.options.disabled||this.options.type=="static"||(i=null,e=n(t.target).parents().each(function(){if(n.data(this,"sortableTree-item"))return i=n(this),!1}),n.data(t.target,"sortableTree-item")&&(i=n(t.target)),!i)||this.options.handle&&(f=!1,n(this.options.handle,i).each(function(){this==t.target&&(f=!0)}),!f))return!1;for(this.currentItem=i,r=this.options,this.currentContainer=this,this.refresh(),this.helper=typeof r.helper=="function"?n(r.helper.apply(this.element[0],[t,this.currentItem])):this.currentItem.clone(),this.helper.parents("body").length||this.helper.appendTo("body"),this.helper.css({position:"absolute",clear:"both"}).addClass("ui-sortableTree-helper"),n.extend(this,{offsetParent:this.helper.offsetParent(),offsets:{absolute:this.currentItem.offset()}}),n.extend(this,{position:{current:{left:t.pageX,top:t.pageY},absolute:{left:t.pageX,top:t.pageY},dom:this.currentItem.prev()[0]},clickOffset:{left:-5,top:-5}}),this.propagate("start",t),this.helperProportions={width:this.helper.outerWidth(),height:this.helper.outerHeight()},u=this.containers.length-1;u>=0;u--)this.containers[u].propagate("activate",t,this);return n.ui.ddmanager&&(n.ui.ddmanager.current=this),n.ui.ddmanager&&!r.dropBehaviour&&n.ui.ddmanager.prepareOffsets(this,t),this.dragging=!0,!0},mouseStop:function(t){var r,i;if(this.newPositionAt&&this.options.sortIndication.remove.call(this.currentItem,this.newPositionAt),this.propagate("stop",t),r=n.ui.ddmanager&&!this.options.dropBehaviour?n.ui.ddmanager.drop(this,t):!1,!r&&this.newPositionAt&&this.newPositionAt[this.direction=="down"?"before":"after"](this.currentItem),this.position.dom!=this.currentItem.prev()[0]&&this.propagate("update",t),!this.element[0].contains(this.currentItem[0]))for(this.propagate("remove",t),i=this.containers.length-1;i>=0;i--)this.containers[i].element[0].contains(this.currentItem[0])&&(this.containers[i].propagate("update",t,this),this.containers[i].propagate("receive",t,this));for(i=this.containers.length-1;i>=0;i--)this.containers[i].propagate("deactivate",t,this),this.containers[i].containerCache.over&&(this.containers[i].propagate("out",t,this),this.containers[i].containerCache.over=0);return(this.dragging=!1,this.cancelHelperRemoval)?!1:(this.helper.remove(),!1)},mouseDrag:function(t){var r,i,u;if(this.position.current={top:t.pageY+5,left:t.pageX+5},this.position.absolute={left:t.pageX+5,top:t.pageY+5},n.ui.ddmanager&&n.ui.ddmanager.drag(this,t),r=!1,n.each(n.ui.ddmanager.droppables,function(){this.isover&&(r=!0)}),r)this.newPositionAt&&this.options.sortIndication.remove.call(this.currentItem,this.newPositionAt);else for(i=this.items.length-1;i>=0;i--)if(!this.currentItem[0].contains(this.items[i].item[0])&&(u=this.intersectsWithEdge(this.items[i]),u)){this.direction=u==1?"down":"up";this.rearrange(t,this.items[i]);this.propagate("change",t);break}return this.contactContainers(t),this.propagate("sort",t),this.helper.css({left:this.position.current.left+"px",top:this.position.current.top+"px"}),!1},rearrange:function(n,t){t&&(this.newPositionAt&&this.options.sortIndication.remove.call(this.currentItem,this.newPositionAt),this.newPositionAt=t.item,this.options.sortIndication[this.direction].call(this.currentItem,this.newPositionAt))}}));n.extend(n.ui.sortableTree,{defaults:{items:"> *",zIndex:1e3,distance:1},getter:"serialize toArray"})}(jQuery)