(function(a){a.fn.reverse=[].reverse;a.fn.shift=[].shift;a.fn.simpletreeview=function(e){var g=a.extend({},{open:"&#9660;",close:"&#9658;",slide:false,speed:"normal",collapsed:false,collapse:null,expand:null},e);var h=a(this);this.expand=function(i){var j=this.getNode(i).parents("ul").reverse().andSelf();j.shift();d(j)};function d(j){if(j.size()==0){return}var i=a(j.get(0));j.shift();c(i,"open",function(){d(j)})}this.collapse=function(i){f(this.getNode(i))};function f(i){if(i.parent("li").size()==0){return}c(i,"close",function(){f(i.parent("li").parent("ul"))})}function c(i,l,k){if(k===undefined){k=function(){}}var j=i.parent("li").children("span.handle");if(l=="open"){j.html(g.open);if(g.slide){i.slideDown(g.speed,k)}else{i.show();k()}}else{if(l=="close"){j.html(g.close);if(g.slide){i.slideUp(g.speed,k)}else{i.hide();k()}}else{j.html(i.is(":hidden")?g.open:g.close);if(g.slide){i.slideToggle(g.speed,k)}else{i.toggle();k()}}}}this.getNode=function(i){if(typeof i!="object"){selector=a.map(i.toString().split("."),function(j){return"li:eq("+j+") > ul"}).join(" > ");i=h.find(">"+selector)}return i};function b(i){i.each(function(){var j=a(this);var k=j.children("ul");var l=k.children("li");if(l.size()>0){j.prepend('<span class="handle">'+(g.collapsed||k.is(":hidden")?g.close:g.open)+"</span>");if(g.collapsed){k.hide()}j.children("span.handle").click(function(){c(k)});b(l)}})}b(h.children("li"));if(g.expand){this.expand(g.expand)}if(g.collapse){this.collapse(g.collapse)}return this}})(jQuery);
