var slidingList=new Class({Implements:[Options],getOptions:function(){return{openClass:"plus",closedClass:"minus",openId:"current_menu",transition:Fx.Transitions.Expo.easeInOut,duration:250,defaultClosed:false}},initialize:function(c,a){this.setOptions(this.getOptions(),a);this.list=$(c);if(!this.list){return false}this.elements={parents:[],childs:[],span:[],opened:[]};var b=new Element("span").set('html','&nbsp;');this.list.getElements("li").each(function(d){b.clone().inject(d,"top")});this.index=0;this.list.getElements("ul").each(function(e,d){par=e.getParent();span=par.getElement("span");opened=true;if(this.options.defaultClosed){opened=(e.hasChild(this.options.openId)||par.getProperty("id")==this.options.openId)?true:false}span.addClass((opened)?this.options.closedClass:this.options.openClass);e.setStyles({overflow:"hidden",height:(opened)?"auto":"0px"});this.elements.opened.push(opened);this.elements.parents.push(par);this.elements.childs.push(e);this.elements.span.push(span);span.addEvent("click",function(f){this.toggle(f)}.bind(this,[this.index]));this.index++}.bind(this))},toggle:function(c){opened=this.elements.opened[c];this.elements.span[c].addClass((opened)?this.options.openClass:this.options.closedClass);this.elements.span[c].removeClass((opened)?this.options.closedClass:this.options.openClass);this.elements.opened[c]=(opened)?false:true;if(this.mp){this.mp.cancel()}this.setParentsHeight(this.elements.parents[c]);this.mp=new Fx.Morph(this.elements.childs[c],{duration:this.options.duration,wait:false,transition:this.options.transition});var d=this.elements.childs[c].getScrollSize().y;var b=(opened)?d:0;var a=(opened)?0:d;this.mp.start({height:[b,a]})},setParentsHeight:function(b){var a=true;var c=b;while(a){c=c.getParent("ul");if(c==this.list){a=false}else{c.setStyle("height","auto")}}}});