Drawer=Class.create({container:null,items:[],isAnimating:false,stylesheet:"stylesheets/drawer.css",initialize:function(e,a){this.container=$(e);if(!this.container){throw (s2.fx.elementDoesNotExistError);return false}this.options=Object.extend({duration:0.4,transition:"sinusoidal"},a);this.render()},render:function(){this.items=this.container.childElements();b=[];h=[];d=[];c=[];this.items.each(function(k,j){var g=k.select("h2","h3")[0];var a=k.select(".holder")[0];k.addClassName("drawer-item");if(j==0){k.addClassName("first")}if(j==this.items.length-1){k.addClassName("last")}h[j]=g.getHeight();d[j]=a.getHeight()+h[j];b[j]=s2.css.interpolateColor(App.colorsL[page.color1],App.colorsD[page.color1],j/this.items.length);c[j]=s2.css.interpolateColor(App.colorsL[page.color2],App.colorsD[page.color2],j/this.items.length);k.setStyle({height:h[j]+"px"});k.setStyle("background-color:"+b[j]);g.observe("mousedown",function(l,i){i.startX=l.clientX;i.startY=l.clientY}.bindAsEventListener(this,k));g.observe("click",function(n,m){m.mousedown=false;if(this.isAnimating||m.dragged){return}var l=10;var i=((n.clientX-m.startX).abs()>l||(n.clientY-m.startY).abs()>l);if(i){return}this.items.each(function(p,o){if(p!=m&&p.expanded){this.close(o)}}.bind(this));this.open(this.items.indexOf(m))}.bindAsEventListener(this,k));k.observe("mouseenter",function(l,i){if(i.decolorize){i.decolorize.cancel()}i.colorize=new s2.fx.Morph(i,{style:"background-color:"+c[j],duration:0.2});i.colorize.play()}.bindAsEventListener(this,k));k.observe("mouseleave",function(l,i){if(i.expanded){return}if(i.colorize){i.colorize.cancel()}i.decolorize=new s2.fx.Morph(i,{style:"background-color:"+b[j],duration:0.2});i.decolorize.play()}.bindAsEventListener(this,k));var e=document.location.hash;if(e){var f=k.descendants().find(function(i){return(i.nodeName.toUpperCase()=="A"&&i.href.match(e))})}if(f){this.open(j);k.colorize=new s2.fx.Morph(k,{style:"background-color:"+c[j],duration:0.2});k.colorize.play()}}.bind(this))},open:function(a){var f=this.items[a];f.expanded=!f.expanded;var e=f.expanded?d[a]:h[a];f.morph("height:"+e+"px",{duration:this.options.duration,transition:this.options.transition,before:function(){this.isAnimating=true}.bind(this),after:function(){this.isAnimating=false}.bind(this)});startClose=f.expanded?900:868;endClose=f.expanded?868:900;if(document.getElementsByTagName("html")[0].dir=="rtl"){startClose=f.expanded?-20:16;endClose=f.expanded?16:-20}new s2.fx.Attribute(f,startClose,endClose,{duration:this.options.duration,transition:this.options.transition},function(g){f.style.backgroundPosition=g+"px 18px"}).play()},close:function(a){var e=this.items[a];e.expanded=!e.expanded;e.morph("height:"+h[a]+"px",{duration:this.options.duration,transition:this.options.transition});e.decolorize=new s2.fx.Morph(e,{style:"background-color:"+b[a],duration:0.2}).play();startClose=868;endClose=900;if(document.getElementsByTagName("html")[0].dir=="rtl"){startClose=16;endClose=-20}new s2.fx.Attribute(e,startClose,endClose,{duration:this.options.duration,transition:this.options.transition},function(f){e.style.backgroundPosition=f+"px 18px"}).play()}});
