From d3201395a7f072c9f7230e0a1e86f5b7af41276e Mon Sep 17 00:00:00 2001 From: Ivan Bozhanov Date: Mon, 9 Apr 2012 22:10:25 +0300 Subject: [PATCH] new nodes created from the context menu are now correctly edited #191 --- dist/jstree.js | 10 +++++++--- dist/jstree.min.js | 2 +- src/jstree.checkbox.js | 2 +- src/jstree.contextmenu.js | 5 +++-- src/jstree.js | 3 +++ 5 files changed, 15 insertions(+), 7 deletions(-) diff --git a/dist/jstree.js b/dist/jstree.js index 56334c9d..afa853cb 100644 --- a/dist/jstree.js +++ b/dist/jstree.js @@ -3923,6 +3923,9 @@ Some static functions and variables, unless you know exactly what you are doing edit : function (obj, default_text) { obj = this.get_node(obj); if(!obj || obj === -1 || !obj.length) { return false; } + obj.parentsUntil(".jstree",".jstree-closed").each($.proxy(function (i, v) { + this.open_node(v, false, 0); + }, this)); var rtl = this.data.core.rtl, w = this.get_container().width(), a = obj.children('a:eq(0)'), @@ -4110,7 +4113,7 @@ Adds checkboxes to the tree. if(!c.hasClass('jstree-checked') && !c.hasClass('jstree-unchecked')) { p = this.get_parent(obj); - if(p && p !== -1 && p.length && p.find('> a > .jstree-checked')) { c.addClass('jstree-checked'); } + if(p && p !== -1 && p.length && p.find('> a > .jstree-checked').length) { c.addClass('jstree-checked'); } else { c.addClass('jstree-unchecked'); } fix_up = false; } @@ -4256,8 +4259,9 @@ Enables a rightclick contextmenu. "action" : function (data) { var inst = $.jstree._reference(data.reference), obj = inst.get_node(data.reference); - inst.create_node(obj); - inst.edit(obj); + inst.create_node(obj, {}, "last", function (new_node) { + setTimeout(function () { inst.edit(new_node); },0); + }); } }, "rename" : { diff --git a/dist/jstree.min.js b/dist/jstree.min.js index f90d8094..5a205202 100644 --- a/dist/jstree.min.js +++ b/dist/jstree.min.js @@ -1,4 +1,4 @@ /*! jstree - v1.0.0 - 2012-04-09 * http://jstree.com * Copyright (c) 2012 Ivan Bozhanov; Licensed MIT, GPL */ -(function(a){a.vakata={}})(jQuery),function(a){a.fn.vakata_reverse=[].reverse}(jQuery),function(a){jQuery.expr[":"].vakata_icontains=function(a,b,c){return(a.textContent||a.innerText||"").toLowerCase().indexOf(c[3].toLowerCase())>=0}}(jQuery),function(a){a.vakata.array_remove=function(a,b,c){var d=a.slice((c||b)+1||a.length);return a.length=b<0?a.length+b:b,a.push.apply(a,d),a}}(jQuery),function(a){a.vakata.array_unique=function(a){var b=[],c,d,e;for(c=0,e=a.length;c').css({position:"absolute",top:-1e3,left:0}).appendTo("body"),d=a('').css({position:"absolute",top:-1e3,left:0}).appendTo("body"),b=c.width()-d.width(),c.add(d).remove()):(c=a("
").css({width:100,height:100,overflow:"auto",position:"absolute",top:-1e3,left:0}).prependTo("body").append("
").find("div").css({width:"100%",height:200}),b=100-c.width(),c.parent().remove())),b}}(jQuery),function(a){a.vakata.css={get_css:function(a,b,c){a=a.toLowerCase();var d=c.cssRules||c.rules,e=0;do{if(d.length&&e>d.length+5)return!1;if(d[e].selectorText&&d[e].selectorText.toLowerCase()===a)return b===!0?(c.removeRule&&c.removeRule(e),c.deleteRule&&c.deleteRule(e),!0):d[e]}while(d[++e]);return!1},add_css:function(b,c){return a.jstree.css.get_css(b,!1,c)?!1:(c.insertRule?c.insertRule(b+" { }",0):c.addRule(b,null,0),a.vakata.css.get_css(b))},remove_css:function(b,c){return a.vakata.css.get_css(b,!0,c)},add_sheet:function(b){var c=!1,d=!0;if(b.str)return b.title&&(c=a("style[id='"+b.title+"-stylesheet']")[0]),c?d=!1:(c=document.createElement("style"),c.setAttribute("type","text/css"),b.title&&c.setAttribute("id",b.title+"-stylesheet")),c.styleSheet?d?(document.getElementsByTagName("head")[0].appendChild(c),c.styleSheet.cssText=b.str):c.styleSheet.cssText=c.styleSheet.cssText+" "+b.str:(c.appendChild(document.createTextNode(b.str)),document.getElementsByTagName("head")[0].appendChild(c)),c.sheet||c.styleSheet;if(b.url){if(!document.createStyleSheet)return c=document.createElement("link"),c.rel="stylesheet",c.type="text/css",c.media="all",c.href=b.url,document.getElementsByTagName("head")[0].appendChild(c),c.styleSheet;try{c=document.createStyleSheet(b.url)}catch(e){}}}}}(jQuery),function(a){var b={element:!1,is_down:!1,is_drag:!1,helper:!1,helper_w:0,data:!1,init_x:0,init_y:0,scroll_l:0,scroll_t:0,scroll_e:!1,scroll_i:!1};a.vakata.dnd={settings:{scroll_speed:10,scroll_proximity:20,helper_left:5,helper_top:10,threshold:5},_trigger:function(b,c){var d=a.vakata.dnd._get();d.event=c,a(document).triggerHandler("dnd_"+b+".vakata",d)},_get:function(){return{data:b.data,element:b.element,helper:b.helper}},_clean:function(){b.helper&&b.helper.remove(),b.scroll_i&&(clearInterval(b.scroll_i),b.scroll_i=!1),b={element:!1,is_down:!1,is_drag:!1,helper:!1,helper_w:0,data:!1,init_x:0,init_y:0,scroll_l:0,scroll_t:0,scroll_e:!1,scroll_i:!1},a(document).unbind("mousemove",a.vakata.dnd.drag),a(document).unbind("mouseup",a.vakata.dnd.stop)},_scroll:function(c){if(!b.scroll_e||!b.scroll_l&&!b.scroll_t)return b.scroll_i&&(clearInterval(b.scroll_i),b.scroll_i=!1),!1;if(!b.scroll_i)return b.scroll_i=setInterval(a.vakata.dnd._scroll,100),!1;if(c===!0)return!1;var d=b.scroll_e.scrollTop(),e=b.scroll_e.scrollLeft();b.scroll_e.scrollTop(d+b.scroll_t*a.vakata.dnd.settings.scroll_speed),b.scroll_e.scrollLeft(e+b.scroll_l*a.vakata.dnd.settings.scroll_speed),(d!==b.scroll_e.scrollTop()||e!==b.scroll_e.scrollLeft())&&a.vakata.dnd._trigger("scroll",b.scroll_e)},start:function(c,d,e){b.is_drag&&a.vakata.dnd.stop({});try{c.currentTarget.unselectable="on",c.currentTarget.onselectstart=function(){return!1},c.currentTarget.style&&(c.currentTarget.style.MozUserSelect="none")}catch(f){}return b.init_x=c.pageX,b.init_y=c.pageY,b.data=d,b.is_down=!0,b.element=c.currentTarget,e!==!1&&(b.helper=a("
").html(e).css({display:"block",margin:"0",padding:"0",position:"absolute",top:"-2000px",lineHeight:"16px",zIndex:"10000"})),a(document).bind("mousemove",a.vakata.dnd.drag),a(document).bind("mouseup",a.vakata.dnd.stop),!1},drag:function(c){if(!b.is_down)return;if(!b.is_drag)if(Math.abs(c.pageX-b.init_x)>a.vakata.dnd.settings.threshold||Math.abs(c.pageY-b.init_y)>a.vakata.dnd.settings.threshold)b.helper&&(b.helper.appendTo("body"),b.helper_w=b.helper.outerWidth()),b.is_drag=!0,a.vakata.dnd._trigger("start",c);else return;var d=!1,e=!1,f=!1,g=!1,h=!1,i=!1,j=!1,k=!1,l=!1,m=!1;b.scroll_t=0,b.scroll_l=0,b.scroll_e=!1;var n=a(c.target).parentsUntil("body").andSelf().vakata_reverse().filter(function(){return/^auto|scroll$/.test(a(this).css("overflow"))&&(this.scrollHeight>this.offsetHeight||this.scrollWidth>this.offsetWidth)}).each(function(){var d=a(this),e=d.offset();this.scrollHeight>this.offsetHeight&&(e.top+d.height()-c.pageYthis.offsetWidth&&(e.left+d.width()-c.pageXg&&c.pageY-jg&&g-(c.pageY-j)i&&c.pageX-ki&&i-(c.pageX-k)f&&(l=f-50),h&&m+b.helper_w>h&&(m=h-(b.helper_w+2)),b.helper.css({left:m+"px",top:l+"px"})),a.vakata.dnd._trigger("move",c)},stop:function(c){b.is_drag&&a.vakata.dnd._trigger("stop",c),a.vakata.dnd._clean()}}}(jQuery),function(a){a.vakata.xslt=function(b,c){var d=!1,e,f,g;if(d===!1&&window.ActiveXObject)try{d=new ActiveXObject("Msxml2.XSLTemplate"),f=new ActiveXObject("Msxml2.DOMDocument"),f.loadXML(b),g=new ActiveXObject("Msxml2.FreeThreadedDOMDocument"),g.loadXML(c),d.stylesheet=g,e=d.createProcessor(),e.input=f,e.transform(),d=e.output}catch(h){}return b=a.parseXML(b),c=a.parseXML(c),d===!1&&typeof XSLTProcessor!="undefined"&&(e=new XSLTProcessor,e.importStylesheet(c),d=e.transformToFragment(b,document),d=a("
").append(d).html()),d===!1&&typeof b.transformNode!="undefined"&&(d=b.transformNode(c)),d}}(jQuery),typeof jQuery.hotkeys=="undefined"&&function(a){function b(a){if(typeof a.data!="string")return;var b=a.handler,c=a.data.toLowerCase().split(" ");a.handler=function(a){if(!(this===a.target||!/textarea|select/i.test(a.target.nodeName)&&a.target.type!=="text"))return;var d=a.type!=="keypress"&&jQuery.vakata_hotkeys.specialKeys[a.which],e=String.fromCharCode(a.which).toLowerCase(),f,g="",h={};a.altKey&&d!=="alt"&&(g+="alt+"),a.ctrlKey&&d!=="ctrl"&&(g+="ctrl+"),a.metaKey&&!a.ctrlKey&&d!=="meta"&&(g+="meta+"),a.shiftKey&&d!=="shift"&&(g+="shift+"),d?h[g+d]=!0:(h[g+e]=!0,h[g+jQuery.vakata_hotkeys.shiftNums[e]]=!0,g==="shift+"&&(h[jQuery.vakata_hotkeys.shiftNums[e]]=!0));for(var i=0,j=c.length;i","/":"?","\\":"|"}},jQuery.each(["keydown","keyup","keypress"],function(){jQuery.event.special[this]={add:b}})}(jQuery),function(a){var b=!1,c={element:!1,reference:!1,position_x:0,position_y:0,items:[],html:"",is_visible:!1};a.vakata.context={settings:{hide_onmouseleave:0,icons:!0},_trigger:function(b){a(document).triggerHandler("context_"+b+".vakata",{reference:c.reference,element:c.element,position:{x:c.position_x,y:c.position_y}})},_execute:function(a){return a=c.items[a],a&&!a._disabled&&a.action?a.action.call(null,{item:a,reference:c.reference,element:c.element,position:{x:c.position_x,y:c.position_y}}):!1},_parse:function(b,d){if(!b)return!1;d||(c.html="",c.items=[]);var e="",f=!1,g;return d&&(e+=""),d||(c.html=e,a.vakata.context._trigger("parse")),e.length>10?e:!1},_show_submenu:function(c){c=a(c);if(!c.length||!c.children("ul").length)return;var d=c.children("ul"),e=c.offset().left+c.outerWidth(),f=c.offset().top,g=d.width(),h=d.height(),i=a(document).width(),j=a(document).height();b?c[e-(g+10+c.outerWidth())<0?"addClass":"removeClass"]("vakata-context-left"):c[e+g+10>i?"addClass":"removeClass"]("vakata-context-right"),f+h+10>j&&d.css("bottom","-1px"),d.show()},show:function(b,d,e){c.element&&c.element.length&&c.element.width("");switch(!0){case!d&&!b:return!1;case!!d&&!!b:c.reference=b,c.position_x=d.x,c.position_y=d.y;break;case!d&&!!b:c.reference=b;var f=b.offset();c.position_x=f.left+b.outerHeight(),c.position_y=f.top;break;case!!d&&!b:c.position_x=d.x,c.position_y=d.y}!!b&&!e&&a(b).data("vakata_contextmenu")&&(e=a(b).data("vakata_contextmenu")),a.vakata.context._parse(e)&&c.element.html(c.html);if(c.items.length){var g=c.element,h=c.position_x,i=c.position_y,j=g.width(),k=g.height(),l=a(document).width(),m=a(document).height();h+j+20>l&&(h=l-(j+20)),i+k+20>m&&(i=m-(k+20)),c.element.css({left:h,top:i}).show().width(c.element.outerWidth()),c.is_visible=!0,a.vakata.context._trigger("show")}},hide:function(){c.is_visible&&(c.element.hide().find("ul").hide(),c.is_visible=!1,a.vakata.context._trigger("hide"))}},a(function(){b=a("body").css("direction")==="rtl";var d=!1,e='.vakata-context { display:none; _width:1px; } .vakata-context, .vakata-context ul { margin:0; padding:2px; position:absolute; background:#f5f5f5; border:1px solid #979797; \t-moz-box-shadow:5px 5px 4px -4px #666666; -webkit-box-shadow:2px 2px 2px #999999; box-shadow:2px 2px 2px #999999; }.vakata-context ul { list-style:none; left:100%; margin-top:-2.7em; margin-left:-4px; } .vakata-context li.vakata-context-right ul { left:auto; right:100%; margin-left:auto; margin-right:-4px; } .vakata-context li { list-style:none; display:inline; }.vakata-context li a { display:block; padding:0 2em 0 2em; text-decoration:none; width:auto; color:black; white-space:nowrap; line-height:2.4em; \t-moz-text-shadow:1px 1px 0px white; -webkit-text-shadow:1px 1px 0px white; text-shadow:1px 1px 0px white; \t-moz-border-radius:1px; -webkit-border-radius:1px; border-radius:1px; }.vakata-context li a:hover { position:relative; background-color:#e8eff7; \t-moz-box-shadow:0px 0px 2px #0a6aa1; -webkit-box-shadow:0px 0px 2px #0a6aa1; box-shadow:0px 0px 2px #0a6aa1; }.vakata-context li.vakata-context-hover > a { position:relative; background-color:#e8eff7; \t-moz-box-shadow:0px 0px 2px #0a6aa1; -webkit-box-shadow:0px 0px 2px #0a6aa1; box-shadow:0px 0px 2px #0a6aa1; }.vakata-context li a.vakata-context-parent { background-image:url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAIORI4JlrqN1oMSnmmZDQUAOw=="); background-position:right center; background-repeat:no-repeat; } .vakata-context li.vakata-context-separator a, .vakata-context li.vakata-context-separator a:hover { background:white; border:0; border-top:1px solid #e2e3e3; height:1px; min-height:1px; max-height:1px; padding:0; margin:0 0 0 2.4em; border-left:1px solid #e0e0e0; _overflow:hidden; \t-moz-text-shadow:0 0 0 transparent; -webkit-text-shadow:0 0 0 transparent; text-shadow:0 0 0 transparent; \t-moz-box-shadow:0 0 0 transparent; -webkit-box-shadow:0 0 0 transparent; box-shadow:0 0 0 transparent; \t-moz-border-radius:0; -webkit-border-radius:0; border-radius:0; }.vakata-context li.vakata-contextmenu-disabled a, .vakata-context li.vakata-contextmenu-disabled a:hover { color:silver; background-color:transparent; border:0; box-shadow:0 0 0; }.vakata-context li a ins { text-decoration:none; display:inline-block; width:2.4em; height:2.4em; background:transparent; margin:0 0 0 -2em; } .vakata-context li a span { display:inline-block; width:1px; height:2.4em; background:white; margin:0 0.5em 0 0; border-left:1px solid #e2e3e3; _overflow:hidden; } .vakata-context-rtl ul { left:auto; right:100%; margin-left:auto; margin-right:-4px; } .vakata-context-rtl li a.vakata-context-parent { background-image:url("data:image/gif;base64,R0lGODlhCwAHAIAAACgoKP///yH5BAEAAAEALAAAAAALAAcAAAINjI+AC7rWHIsPtmoxLAA7"); background-position:left center; background-repeat:no-repeat; } .vakata-context-rtl li.vakata-context-separator a { margin:0 2.4em 0 0; border-left:0; border-right:1px solid #e2e3e3;} .vakata-context-rtl li.vakata-context-left ul { right:auto; left:100%; margin-left:-4px; margin-right:auto; } .vakata-context-rtl li a ins { margin:0 -2em 0 0; } .vakata-context-rtl li a span { margin:0 0 0 0.5em; border-left-color:white; background:#e2e3e3; } ';a.vakata.css.add_sheet({str:e,title:"vakata-context"}),c.element=a("
    "),c.element.delegate("li","mouseenter",function(b){b.stopImmediatePropagation();if(a.contains(this,b.relatedTarget))return;d&&clearTimeout(d),c.element.find(".vakata-context-hover").removeClass("vakata-context-hover").end(),a(this).siblings().find("ul").hide().end().end().parentsUntil(".vakata-context","li").andSelf().addClass("vakata-context-hover"),a.vakata.context._show_submenu(this)}).delegate("li","mouseleave",function(b){if(a.contains(this,b.relatedTarget))return;a(this).find(".vakata-context-hover").andSelf().removeClass("vakata-context-hover")}).bind("mouseleave",function(b){a(this).find(".vakata-context-hover").removeClass("vakata-context-hover"),a.vakata.context.settings.hide_onmouseleave&&(d=setTimeout(function(b){return function(){a.vakata.context.hide()}}(this),a.vakata.context.settings.hide_onmouseleave))}).delegate("a","click",function(a){a.preventDefault()}).delegate("a","mouseup",function(b){!a(this).blur().parent().hasClass("vakata-context-disabled")&&a.vakata.context._execute(a(this).attr("rel"))!==!1&&a.vakata.context.hide()}).appendTo("body"),a(document).bind("mousedown",function(b){c.is_visible&&!a.contains(c.element[0],b.target)&&a.vakata.context.hide()}).bind("context_show.vakata",function(a,d){c.element.find("li:has(ul)").children("a").addClass("vakata-context-parent"),b&&c.element.addClass("vakata-context-rtl").css("direction","rtl"),c.element.find("ul").hide().end()}),(typeof a.hotkeys!="undefined"||typeof a.vakata_hotkeys!="undefined")&&a(document).bind("keydown","up",function(a){if(c.is_visible){var b=c.element.find("ul:visible").andSelf().last().children(".vakata-context-hover").removeClass("vakata-context-hover").prevAll("li:not(.vakata-context-separator)").first();b.length||(b=c.element.find("ul:visible").andSelf().last().children("li:not(.vakata-context-separator)").last()),b.addClass("vakata-context-hover"),a.stopImmediatePropagation(),a.preventDefault()}}).bind("keydown","down",function(a){if(c.is_visible){var b=c.element.find("ul:visible").andSelf().last().children(".vakata-context-hover").removeClass("vakata-context-hover").nextAll("li:not(.vakata-context-separator)").first();b.length||(b=c.element.find("ul:visible").andSelf().last().children("li:not(.vakata-context-separator)").first()),b.addClass("vakata-context-hover"),a.stopImmediatePropagation(),a.preventDefault()}}).bind("keydown","right",function(a){c.is_visible&&(c.element.find(".vakata-context-hover").last().children("ul").show().children("li:not(.vakata-context-separator)").removeClass("vakata-context-hover").first().addClass("vakata-context-hover"),a.stopImmediatePropagation(),a.preventDefault())}).bind("keydown","left",function(a){c.is_visible&&(c.element.find(".vakata-context-hover").last().parents("li:eq(0)").find("ul").hide().find(".vakata-context-hover").removeClass("vakata-context-hover"),a.stopImmediatePropagation(),a.preventDefault())}).bind("keydown","esc",function(b){a.vakata.context.hide(),b.preventDefault()}).bind("keydown","space",function(a){c.element.find(".vakata-context-hover").last().children("a").click(),a.preventDefault()})})}(jQuery),function(a){var b=function(a){var b=/["\\\x00-\x1f\x7f-\x9f]/g,c={"\b":"\\b","\t":"\\t","\n":"\\n","\f":"\\f","\r":"\\r",'"':'\\"',"\\":"\\\\"};return a.match(b)?'"'+a.replace(b,function(a){var b=c[a];return typeof b=="string"?b:(b=a.charCodeAt(),"\\u00"+Math.floor(b/16).toString(16)+(b%16).toString(16))})+'"':'"'+a+'"'};a.vakata.json={encode:function(c){if(c===null)return"null";var d=[],e;switch(typeof c){case"undefined":return undefined;case"number":case"boolean":return c+"";case"string":return b(c);case"object":if(a.isFunction(c.toJSON))return a.vakata.json.encode(c.toJSON());if(c.constructor===Date)return'"'+c.getUTCFullYear()+"-"+String("0"+(c.getUTCMonth()+1)).slice(-2)+"-"+String("0"+c.getUTCDate()).slice(-2)+"T"+String("0"+c.getUTCHours()).slice(-2)+":"+String("0"+c.getUTCMinutes()).slice(-2)+":"+String("0"+c.getUTCSeconds()).slice(-2)+"."+String("00"+c.getUTCMilliseconds()).slice(-3)+'Z"';if(c.constructor===Array){for(e=0;e1&&String(c)!=="[object Object]"){d=a.extend({},d);if(c===null||c===undefined)d.expires=-1;return typeof d.expires=="number"&&(e=d.expires,f=d.expires=new Date,f.setDate(f.getDate()+e)),c=String(c),document.cookie=[encodeURIComponent(b),"=",d.raw?c:encodeURIComponent(c),d.expires?"; expires="+d.expires.toUTCString():"",d.path?"; path="+d.path:"",d.domain?"; domain="+d.domain:"",d.secure?"; secure":""].join("")}return d=c||{},h=d.raw?function(a){return a}:decodeURIComponent,(g=(new RegExp("(?:^|; )"+encodeURIComponent(b)+"=([^;]*)")).exec(document.cookie))?h(g[1]):null}}(jQuery),function(a){function j(){var b=!1;if("localStorage"in window)try{window.localStorage.setItem("_tmptest","tmpval"),b=!0,window.localStorage.removeItem("_tmptest")}catch(e){}if(b)try{window.localStorage&&(c=window.localStorage,h="localStorage")}catch(f){}else if("globalStorage"in window)try{window.globalStorage&&(c=window.globalStorage[window.location.hostname],h="globalStorage")}catch(g){}else{d=document.createElement("link");if(d.addBehavior){d.style.behavior="url(#default#userData)",document.getElementsByTagName("head")[0].appendChild(d);try{d.load("jStorage");var i="{}";i=d.getAttribute("jStorage"),c.jStorage=i,h="userDataBehavior"}catch(j){}}!h&&(!!a.vakata.cookie("__vjstorage")||a.vakata.cookie("__vjstorage","{}",{expires:365})&&a.vakata.cookie("__vjstorage")==="{}")&&(d=null,c.jStorage=a.vakata.cookie("__vjstorage"),h="cookie");if(!h){d=null;return}}k(),n()}function k(){if(c.jStorage)try{b=g(String(c.jStorage))}catch(a){c.jStorage="{}"}else c.jStorage="{}";e=c.jStorage?String(c.jStorage).length:0}function l(){try{c.jStorage=f(b),h==="userDataBehavior"&&(d.setAttribute("jStorage",c.jStorage),d.save("jStorage")),h==="cookie"&&a.vakata.cookie("__vjstorage",c.jStorage,{expires:365}),e=c.jStorage?String(c.jStorage).length:0}catch(g){}}function m(a){if(!a||typeof a!="string"&&typeof a!="number")throw new TypeError("Key name must be string or numeric");if(a==="__jstorage_meta")throw new TypeError("Reserved key name");return!0}function n(){var a=+(new Date),c,d,e=Infinity,f=!1;i!==!1&&clearTimeout(i);if(!b.__jstorage_meta||typeof b.__jstorage_meta.TTL!="object")return;d=b.__jstorage_meta.TTL;for(c in d)d.hasOwnProperty(c)&&(d[c]<=a?(delete d[c],delete b[c],f=!0):d[c]0?b.__jstorage_meta.TTL[a]=d+c:delete b.__jstorage_meta.TTL[a],l(),n(),!0):!1},flush:function(){return b={},l(),!0},storageObj:function(){function a(){}return a.prototype=b,new a},index:function(){var c=[],d;return a.each(b,function(a,b){a!=="__jstorage_meta"&&c.push(a)}),c},storageSize:function(){return e},currentBackend:function(){return h},storageAvailable:function(){return!!h}},j()}(jQuery),function(a){a.vakata.pretty_date={lang:{ago:"Ago",from:"From Now",now:"Just Now",minute:"Minute",minutes:"Minutes",hour:"Hour",hours:"Hours",day:"Day",days:"Days",week:"Week",weeks:"Weeks",month:"Month",months:"Months",year:"Year",years:"Years"},parse:function(b,c){b=new Date(b.replace(/-/g,"/").replace(/[TZ]/g," ").replace(/\+\d\d\:\d\d$/,"")),c=c||new Date;var d=a.vakata.pretty_date.lang,e=[[60,d.now],[3600,d.minute,d.minutes,60],[86400,d.hour,d.hours,3600],[604800,d.day,d.days,86400],[2628e3,d.week,d.weeks,604800],[31536e3,d.month,d.months,2628e3],[Infinity,d.year,d.years,31536e3]],f=(c-b+c.getTimezoneOffset()*6e4)/1e3,g=function(a,b){var c=.1;return a>=b&&a<=b*(1+c)?b:a},h;f<0?(f=Math.abs(f),h=" "+d.from):h=" "+d.ago;for(var i=0,j=e[0];e[i];j=e[++i])if(f0?h:"")}},init:function(b,c){a("time, [datetime]").vakata_pretty_date(c),setInterval(function(){a("time, [datetime]").vakata_pretty_date(c)},b||6e4)}},a.fn.vakata_pretty_date=function(b,c){return b||(b="%{s}"),this.each(function(){var d=jQuery(this),e=a.vakata.pretty_date.parse(d.attr("datetime"),c);e&&(e=b.replace("%{s}",e),d.html()!==e&&d.html(e))})}}(jQuery),function(a){a.vakata.selection={get:function(a){if(window.getSelection){if(a)return window.getSelection().toString();var b=window.getSelection(),c=b.getRangeAt&&b.rangeCount?b.getRangeAt(0):document.createRange(),d=document.createElement("div");return b.getRangeAt||(c.setStart(b.anchorNode,b.anchorOffset),c.setEnd(b.focusNode,b.focusOffset)),d.appendChild(c.cloneContents()),d.innerHTML}return document.selection?document.selection.createRange()[a?"text":"htmlText"]:""},elm_get:function(a){a=typeof a=="string"?document.getElementById(a):a,a.jquery&&(a=a.get(0));if("selectionStart"in a)return{start:a.selectionStart,end:a.selectionEnd,length:a.selectionEnd-a.selectionStart,text:a.value.substr(a.selectionStart,a.selectionEnd-a.selectionStart)};if(!document.selection)return{start:a.value.length,end:a.value.length,length:0,text:""};a.focus();var b=document.selection.createRange(),c=!1,d=!1,e,f,g,h;if(b&&b.parentElement()===a)return e=a.value.length,f=a.value.replace(/\r\n/g,"\n"),c=a.createTextRange(),c.moveToBookmark(b.getBookmark()),d=a.createTextRange(),d.collapse(!1),c.compareEndPoints("StartToEnd",d)>-1?g=h=e:(g=-c.moveStart("character",-e),g+=f.slice(0,g).split("\n").length-1,c.compareEndPoints("EndToEnd",d)>-1?h=e:(h=-c.moveEnd("character",-e),h+=f.slice(0,h).split("\n").length-1)),f=a.value.slice(g,h),{start:g,end:h,length:f.length,text:f}},elm_set:function(b,c,d){b=typeof b=="string"?document.getElementById(b):b,b.jquery&&(b=b.get(0));if("selectionStart"in b)b.focus(),b.selectionStart=c,b.selectionEnd=d;else if(document.selection){b.focus();var e=b.createTextRange(),f=b.value.replace(/\r\n/g,"\n");c-=f.slice(0,c).split("\n").length-1,d-=f.slice(0,d).split("\n").length-1,e.collapse(!0),e.moveEnd("character",d),e.moveStart("character",c),e.select()}return a.vakata.selection.elm_get(b)},elm_replace:function(b,c){b=typeof b=="string"?document.getElementById(b):b,b.jquery&&(b=b.get(0));var d=a.vakata.selection.elm_get(b),e=d.start,f=e+c.length;return b.value=b.value.substr(0,e)+c+b.value.substr(d.end,b.value.length),a.vakata.selection.elm_set(b,e,f),{start:e,end:f,length:c.length,text:c}},elm_get_caret:function(b){return a.vakata.selection.elm_get(b).end},elm_set_caret:function(b,c){return a.vakata.selection.elm_set(b,c,c)},elm_get_caret_position:function(b){b=typeof b=="string"?document.getElementById(b):b,b.jquery&&(b=b.get(0));var c=a.vakata.selection.elm_get_caret(b),d=b.value.substring(0,c).replace(/&/g,"&").replace(//ig,">").replace(/\r/g,"").replace(/\t/g," ").replace(/\n/ig,"
    "),e=a.vakata.get_scrollbar_width(),f=a(b).width(),g=a(b).height();return b.scrollHeight>g&&(f-=e),b.scrollWidth>f&&(g-=e),b=a(b),b=a("
    ").html(d).css({background:"red",width:f+"px",height:"auto",position:"absolute",left:"0px",top:"-10000px",fontSize:b.css("fontSize"),fontFamily:b.css("fontFamily"),fontWeight:b.css("fontWeight"),fontVariant:b.css("fontVariant"),fontStyle:b.css("fontStyle"),textTransform:b.css("textTransform"),lineHeight:b.css("lineHeight"),whiteSpace:"pre-wrap"}),b.append(' ').appendTo("body"),d=b.find("span.caret"),c=d.offset(),c.top=c.top+1e4+d.height(),b.remove(),c}}}(jQuery),function(a){a.fn.vakata_highlight=function(b){var c=this;return typeof b=="string"&&(b=[b]),a.isArray(b)&&(b={words:b}),b=a.extend(!0,{},{css_class:"vakata-highlight",words:[],color:"#99ccff"},b),b.words.length&&this.each(function(){var c=a(this);a.each(b.words,function(d,e){var f=!1;typeof b.color=="string"&&(f=b.color),a.isArray(b.color)&&typeof b.color[d]=="string"&&(f=b.color[d]),c.find(':vakata_icontains("'+e.replace(/\"/ig,"")+'")').filter("strong, span, li, p, h1, h2, h3, h4, h5, h6, div, u, em, i, dt, dd").contents().filter(function(){return this.nodeType===3}).each(function(){if(this.nodeValue.toLowerCase().indexOf(e.toLowerCase())>=0){this.nodeValue=this.nodeValue.replace(new RegExp("("+e.replace(/([\-.*+?\^${}()|\[\]\/\\])/g,"\\$1")+")","ig"),"|{{{$1}}}|");var c=a(this).parent();c.html(c.html().replace(/\|\{\{\{/g,'").replace(/\}\}\}\|/g,""))}})})}),c}}(jQuery),function(){"use strict";if(!jQuery)throw"jsTree: jQuery not included.";if(jQuery.jstree)return;(function(a){var b=[],c=-1,d={},e={};a.jstree={VERSION:"1.0.0",IS_IE6:jQuery.browser.msie&&parseInt(jQuery.browser.version,10)===6,IS_IE7:jQuery.browser.msie&&parseInt(jQuery.browser.version,10)===6,IS_FF2:jQuery.browser.mozilla&&parseFloat(jQuery.browser.version,10)<1.9,__construct:function(c){var e={},f={},g=[],h=[],i=0;return c=a(c),a.jstree._reference(c)&&a.jstree.__destruct(c),a.extend.apply(null,[!0,e].concat(Array.prototype.slice.call(arguments,1),c.data("jstree")||{})),g=a.isArray(e.plugins)?e.plugins:a.jstree.defaults.plugins.slice(),g=a.vakata.array_unique(g),e=a.extend(!0,{},a.jstree.defaults,e),a.each(d,function(b,c){b!=="core"&&a.inArray(b,g)===-1?(e[b]=null,delete e[b]):(h.push(b),f[b]={})}),e.plugins=h,i=parseInt(b.push({}),10)-1,c.data("jstree_instance_id",i).addClass("jstree jstree-"+i),this.data=f,this.get_index=function(){return i},this.get_container=function(){return c},this.get_container_ul=function(){return c.children("ul:eq(0)")},this.get_settings=function(b){return b?e:a.extend(!0,{},e)},this.__trigger=function(a,b){if(!a)return;b||(b={}),typeof a=="string"&&(a=a.replace(".jstree","")+".jstree"),b.inst=this,this.get_container().triggerHandler(a,b)},b[i]=this,a.each(h,function(a,c){d[c]&&d[c].__construct.apply(b[i])}),this.__trigger("__construct"),a.jstree._focus(i),this},__destruct:function(e){e=a.jstree._reference(e);if(!e)return!1;var f=e.get_settings(),g=e.get_index(),h=0;if(c===g){for(h in b)if(b.hasOwnProperty(h)&&h!==g){a.jstree._focus(h);break}c===g&&a.jstree._focus(!1)}return a.each(f.plugins,function(a,b){try{d[b].__destruct.apply(e)}catch(c){}}),e.__trigger("__destruct"),e.get_container().unbind(".jstree").undelegate(".jstree").removeData("jstree_instance_id").find("[class^='jstree']").andSelf().attr("class",function(){return this.className.replace(/jstree[^ ]*|$/ig,"")}),a(document).unbind(".jstree-"+g).undelegate(".jstree-"+g),delete b[g],!0},__call:function(b,c,d){b=a.jstree._reference(b);if(!b||!a.isFunction(b[c]))return;return b[c].apply(b,d)},_reference:function(c){if(b[c])return b[c];var d=a(c);return!d.length&&typeof c=="string"&&(d=a("#"+c)),d.length?b[d.closest(".jstree").data("jstree_instance_id")]||null:null},_focused:function(){return b[c]||null},_focus:function(d){return d===!1?(b[c].get_container().removeClass("jstree-focused"),b[c].__trigger("_defocus"),c=-1,!1):(d=a.jstree._reference(d),!d||d.get_index()===c?!1:(c!==-1&&(b[c].get_container().removeClass("jstree-focused"),b[c].__trigger("_defocus")),c=d.get_index(),d.get_container().addClass("jstree-focused"),d.__trigger("_focus"),!0))},plugin:function(b,c){c=a.extend({},{__construct:a.noop,__destuct:a.noop,_fn:{},defaults:!1},c),d[b]=c,a.jstree.defaults[b]=c.defaults,a.each(c._fn,function(c,d){d.plugin=b,d.old=e[c],e[c]=function(){var b,e=d,f=Array.prototype.slice.call(arguments),g=new a.Event("before.jstree"),h=this.get_settings(!0).plugins;do{if(e&&e.plugin&&a.inArray(e.plugin,h)!==-1)break;e=e.old}while(e);if(!e)return;if(c.indexOf("_")===0)b=e.apply(this,f);else{b=this.__trigger(g,{func:c,args:f,plugin:e.plugin});if(b===!1)return;b=e.apply(a.extend({},this,{__callback:function(a){return this.__trigger(c,{args:f,rslt:a,plugin:e.plugin}),a},__call_old:function(a){return e.old.apply(this,a?Array.prototype.slice.call(arguments,1):f)}}),f)}return b},e[c].old=d.old,e[c].plugin=b})},defaults:{plugins:[]}},a.fn.jstree=function(b){var c=typeof b=="string",d=Array.prototype.slice.call(arguments,1),e=this;return this.each(function(){if(c){var f=a.jstree.__call(this,b,d);if(typeof f!="undefined"&&(b.indexOf(!1)||f!==!0&&f!==!1))return e=f,!1}else c=new a.jstree.__construct(this,b)}),e},e=a.jstree.__construct.prototype,a.expr[":"].jstree=function(b,c,d){return typeof a(b).data("jstree_instance_id")!="undefined"}})(jQuery),function(a){var b=!1,c=!1;a(function(){a.jstree.SCROLLBAR_WIDTH=a.vakata.get_scrollbar_width()}),a.jstree.plugin("core",{__construct:function(){this.data.core.rtl=this.get_container().css("direction")==="rtl",this.data.core.rtl&&this.get_container().addClass("jstree-rtl"),this.data.core.ready=!1,this.get_container().bind("__construct.jstree",a.proxy(function(){setTimeout(a.proxy(function(){this&&this.init()},this),0)},this)).bind("before.jstree",a.proxy(function(a,b){if(!/^is_locked|unlock$/.test(b.func)&&this.data.core.locked)return a.stopImmediatePropagation(),!1},this)).bind("create_node.jstree",a.proxy(function(a,b){this.clean_node(b.rslt.obj)},this)).bind("load_node.jstree",a.proxy(function(a,b){this.clean_node(b.rslt.obj===-1?this.get_container_ul().children("li"):b.rslt.obj.find("> ul > li")),!this.data.core.ready&&!this.get_container_ul().find(".jstree-loading:eq(0)").length&&(this.data.core.ready=!0,this.__trigger("__ready"))},this)).bind("__loaded.jstree",a.proxy(function(a,b){b.inst.get_container_ul().children("li").each(function(){b.inst.correct_node(this)})},this)).bind("open_node.jstree",a.proxy(function(a,b){b.rslt.obj.find("> ul > li").each(function(){b.inst.correct_node(this)})},this)).bind("mousedown.jstree",a.proxy(function(){a.jstree._focus(this.get_index())},this)).bind("dblclick.jstree",function(){if(document.selection&&document.selection.empty)document.selection.empty();else if(window.getSelection){var a=window.getSelection();try{a.removeAllRanges(),a.collapse()}catch(b){}}}).delegate("li > ins","click.jstree",a.proxy(function(a){this.toggle_node(a.target)},this))},__destruct:function(){},defaults:{strings:!1},_fn:{_get_string:function(b){var c=this.get_settings(!0).core.strings;return a.isFunction(c)?c.call(this,b):c&&c[b]?c[b]:b},init:function(){this.data.core.original_container_html=this.get_container().find(" > ul > li").clone(!0),this.data.core.original_container_html.find("li").andSelf().contents().filter(function(){return this.nodeType===3&&(!this.nodeValue||/^\s+$/.test(this.nodeValue))}).remove(),this.get_container().html(""),this.clean_node(-1),this.data.core.li_height=this.get_container_ul().children("li:eq(0)").height()||18,this.load_node(-1,function(){this.__trigger("__loaded")})},lock:function(){this.data.core.locked=!0,this.get_container().addClass("jstree-locked"),this.__callback()},unlock:function(){this.data.core.locked=!1,this.get_container().removeClass("jstree-locked"),this.__callback()},is_locked:function(){return this.data.core.locked},get_node:function(b){var c=a(b,this.get_container());return c.is(".jstree")||b===-1?-1:(c=c.closest("li",this.get_container()),c.length?c:!1)},get_next:function(a,b){return a=this.get_node(a),a===-1?this.get_container_ul().children("li:eq(0)"):!a||!a.length?!1:b?a.nextAll("li").size()>0?a.nextAll("li:eq(0)"):!1:a.hasClass("jstree-open")?a.find("li:eq(0)"):a.nextAll("li").size()>0?a.nextAll("li:eq(0)"):a.parentsUntil(".jstree","li").next("li").eq(0)},get_prev:function(a,b){a=this.get_node(a);if(a===-1)return this.get_container().find("> ul > li:last-child");if(!a||!a.length)return!1;if(b)return a.prevAll("li").length>0?a.prevAll("li:eq(0)"):!1;if(a.prev("li").length){a=a.prev("li").eq(0);while(a.hasClass("jstree-open"))a=a.children("ul:eq(0)").children("li:last");return a}var c=a.parentsUntil(".jstree","li:eq(0)");return c.length?c:!1},get_parent:function(a){a=this.get_node(a);if(a===-1||!a||!a.length)return!1;var b=a.parentsUntil(".jstree","li:eq(0)");return b.length?b:-1},get_children:function(a){return a=this.get_node(a),a===-1?this.get_container_ul().children("li"):!a||!a.length?!1:a.find("> ul > li")},is_parent:function(a){return a=this.get_node(a),a&&a!==-1&&(a.find("> ul > li:eq(0)").length||a.hasClass("jstree-closed"))},is_loaded:function(a){return a=this.get_node(a),a&&(a===-1&&!this.get_container().find("> ul > li.jstree-loading").length||a!==-1&&!a.hasClass("jstree-loading")&&(a.find("> ul > li").length||a.hasClass("jstree-leaf")))},is_loading:function(a){return a=this.get_node(a),a&&(a===-1&&this.get_container().find("> ul > li.jstree-loading").length||a!==-1&&a.hasClass("jstree-loading"))},is_open:function(a){return a=this.get_node(a),a&&a!==-1&&a.hasClass("jstree-open")},is_closed:function(a){return a=this.get_node(a),a&&a!==-1&&a.hasClass("jstree-closed")},is_leaf:function(a){return a=this.get_node(a),a&&a!==-1&&a.hasClass("jstree-leaf")},load_node:function(b,c){return b=this.get_node(b),b?(b!==-1&&b.addClass("jstree-loading"),this._load_node(b,a.proxy(function(a){b!==-1&&b.removeClass("jstree-loading"),this.__callback({obj:b,status:a}),c&&c.call(this,b,a)},this)),!0):(c.call(this,b,!1),!1)},_load_node:function(a,b){a===-1&&this.get_container_ul().empty().append(this.data.core.original_container_html.clone(!0)),b.call(null,!0)},open_node:function(b,c,d){b=this.get_node(b);if(b===-1||!b||!b.length)return!1;if(!this.is_closed(b))return c&&c.call(this,b,!1),!1;if(!this.is_loaded(b))this.load_node(b,function(a,b){return b?this.open_node(a,c,d):c?c.call(this,a,!1):!1});else{var e=this;b.children("ul").css("display","none").end().removeClass("jstree-closed").addClass("jstree-open").children("ul").stop(!0,!0).slideDown(a.jstree.IS_IE6?0:d,function(){this.style.display="",e.__trigger("__after_open",{rslt:{obj:b}})}),c&&c.call(this,b,!0),this.__callback({obj:b})}},close_node:function(b,c){b=this.get_node(b);if(!b||!b.length||!this.is_open(b))return!1;var d=this;b.children("ul").attr("style","display:block !important").end().removeClass("jstree-open").addClass("jstree-closed").children("ul").stop(!0,!0).slideUp(a.jstree.IS_IE6?0:c,function(){this.style.display="",d.__trigger("__after_close",{rslt:{obj:b}})}),this.__callback({obj:b})},toggle_node:function(a){if(this.is_closed(a))return this.open_node(a);if(this.is_open(a))return this.close_node(a)},open_all:function(a,b,c){a=a?this.get_node(a):-1,a=!a||a===-1?this.get_container_ul():a,c=c||a;var d=this;a=this.is_closed(a)?a.find("li.jstree-closed").andSelf():a.find("li.jstree-closed"),a.each(function(){d.open_node(this,d.is_loaded(this)?!1:function(a){this.open_all(a,b,c)},b||0)}),c.find("li.jstree-closed").length===0&&this.__callback({obj:c})},close_all:function(a,b){a=a?this._get_node(a):-1;var c=!a||a===-1?this.get_container_ul():a,d=this;c=this.is_open(c)?c.find("li.jstree-open").andSelf():c.find("li.jstree-open"),c.each(function(){d.close_node(this,b||0)}),this.__callback({obj:a})},clean_node:function(b){b=this.get_node(b),b=!b||b===-1?this.get_container().find("li"):b.find("li").andSelf();var c=this;return b.each(function(){var b=a(this),d=b.data("jstree"),e=d&&d.opened||b.hasClass("jstree-open")?"open":d&&d.closed||b.children("ul").length?"closed":"leaf";d&&d.opened&&delete d.opened,d&&d.closed&&delete d.closed,b.removeClass("jstree-open jstree-closed jstree-leaf jstree-last"),b.children("a").length?a.trim(b.children("a").attr("href"))||b.children("a").attr("href","#"):(b.contents().filter(function(){return this.nodeType===3||this.tagName!=="UL"}).wrapAll(''),b.children("a").html(b.children("a").html().replace(/[\s\t\n]+$/,""))),b.children("ins.jstree-ocl").length||b.prepend(" "),b.is(":last-child")&&b.addClass("jstree-last");switch(e){case"leaf":b.addClass("jstree-leaf");break;case"closed":b.addClass("jstree-open"),c.close_node(b,0);break;case"open":b.addClass("jstree-closed"),c.open_node(b,!1,0)}})},correct_node:function(b,c){return b=this.get_node(b),!b||b===-1&&!c?!1:(b===-1?b=this.get_container().find("li"):b=c?b.find("li").andSelf():b,b.each(function(){var b=a(this);switch(!0){case b.hasClass("jstree-open")&&!b.find("> ul > li").length:b.removeClass("jstree-open").addClass("jstree-leaf").children("ul").remove();break;case b.hasClass("jstree-leaf")&&!!b.find("> ul > li").length:b.removeClass("jstree-leaf").addClass("jstree-closed")}b[b.is(":last-child")?"addClass":"removeClass"]("jstree-last")}),b)},scroll_to_node:function(b){var c=this.get_container()[0],d;if(c.scrollHeight>c.offsetHeight){b=this.get_node(b);if(!b||b===-1||!b.length||!b.is(":visible"))return;d=b.offset().top-this.get_container().offset().top,d<0&&(c.scrollTop=c.scrollTop+d-1),d+this.data.core.li_height+(c.scrollWidth>c.offsetWidth?a.jstree.SCROLLBAR_WIDTH:0)>c.offsetHeight&&(c.scrollTop=c.scrollTop+(d-c.offsetHeight+this.data.core.li_height+1+(c.scrollWidth>c.offsetWidth?a.jstree.SCROLLBAR_WIDTH:0)))}},get_state:function(){var a={open:[],scroll:{left:this.get_container().scrollLeft(),top:this.get_container().scrollTop()}};return this.get_container_ul().find(".jstree-open").each(function(){this.id&&a.open.push(this.id)}),a},set_state:function(b,c){if(b){if(a.isArray(b.open)){var d=!0,e=this;return this.close_all(),a.each(b.open.concat([]),function(c,f){f=document.getElementById(f),f&&(e.is_loaded(f)?(e.is_closed(f)&&e.open_node(f,!1,0),a.vakata.array_remove(b.open,c)):(e.open_node(f,a.proxy(function(){this.set_state(b)},e),0),d=!1))}),d&&(delete b.open,this.set_state(b,c)),!1}return b.scroll?(b.scroll&&typeof b.scroll.left!="undefined"&&this.get_container().scrollLeft(b.scroll.left),b.scroll&&typeof b.scroll.top!="undefined"&&this.get_container().scrollTop(b.scroll.top),delete b.scroll,delete b.open,this.set_state(b,c),!1):a.isEmptyObject(b)?(c&&c.call(this),this.__callback(),!1):!0}return!1},refresh:function(){this.data.core.state=this.get_state(),this.load_node(-1,function(b,c){c&&this.set_state(a.extend(!0,{},this.data.core.state),function(){this.__trigger("refresh")}),this.data.core.state=null})},get_text:function(a,b){return a=this.get_node(a),!a||a===-1||!a.length?!1:(a=a.children("a:eq(0)").clone(),a.children(".jstree-icon").remove(),a[b?"text":"html"]())},set_text:function(a,b){a=this.get_node(a);if(!a||a===-1||!a.length)return!1;a=a.children("a:eq(0)");var c=a.children("INS").clone();return a.html(b).prepend(c),this.__callback({obj:a,text:b}),!0},parse_json:function(b){var c,d,e,f;if(a.isArray(b))return e=a("