var ImageMenu=new Class({getOptions:function(){return{onOpen:false,onClose:Class.empty,openHeight:200,transition:Fx.Transitions.Quad.easeOut,duration:400,open:null,border:0}},initialize:function(B,A){this.setOptions(this.getOptions(),A);this.elements=$$(B);this.heights={};this.heights.closed=this.elements[0].getStyle("height").toInt();this.heights.openSelected=this.options.openHeight;this.heights.openOthers=Math.round(((this.heights.closed*this.elements.length)-(this.heights.openSelected+this.options.border))/(this.elements.length-1));this.fx=new Fx.Elements(this.elements,{wait:false,duration:this.options.duration,transition:this.options.transition});this.elements.each(function(D,C){D.addEvent("mouseenter",function(F){new Event(F).stop();this.reset(C)}.bind(this));D.addEvent("mouseleave",function(F){new Event(F).stop();this.reset(this.options.open)}.bind(this));var E=this;D.addEvent("click",function(F){if(E.options.onOpen){new Event(F).stop();if(E.options.open==C){E.options.open=null;E.options.onClose(this.href,C)}else{E.options.open=C;E.options.onOpen(this.href,C)}}})}.bind(this));if(this.options.open){if($type(this.options.open)=="number"){this.reset(this.options.open)}else{this.elements.each(function(D,C){if(D.id==this.options.open){this.reset(C)}},this)}}},reset:function(B){if($type(B)=="number"){var A=this.heights.openOthers;if(B+1==this.elements.length){A+=this.options.border}}else{var A=this.heights.closed}var C={};this.elements.each(function(F,E){var D=A;if(E==this.elements.length-1){D=A+5}C[E]={height:D}}.bind(this));if($type(B)=="number"){C[B]={height:this.heights.openSelected}}this.fx.start(C)}});ImageMenu.implement(new Options);ImageMenu.implement(new Events);
