(function(a){a.fn.accordion=function(b){var c=typeof b=="string"||false,d=arguments;if(!c)var b=a.extend({},b,{});a(this).each(function(){var e=a(this).data("accordion");if(c&&e){e[b]&&typeof e[b]=="function"&&e[b].apply(e,a.makeArray(d).slice(1));return}else{e=new a.accordion(this,b);a(this).data("accordion",e)}});return this};a.accordion=function(c,b){this.elem=c;this.options=a.extend({},b,a.accordion.defaults);this.init()};a.extend(a.accordion,{defaults:{showDuration:800,hideDuration:800,selectedClass:"selected",show:function(b){var d,e,c;if(a(b).is("."+this.options.selectedClass)){if(this.items.length>1)this.hideCurrent();else this.hideCurrent();return}else this.hideCurrent();d=a(".accordion_content",b);if(!d.length)return;a(b).addClass(this.options.selectedClass);this.current=b;c=a(b).data("accordion_height");a(b).stop();a(b).animate({height:c+"px"},{queue:false,duration:this.options.showDuration,easing:"easeOutExpo",complete:function(){a(this).css({overflow:"",height:""})}});a(".accordion_header",b).addClass("accordion_header_selected")},hide:function(b){var d,e,c;d=a(".accordion_content",b);if(!d.length)return;a(b).removeClass(this.options.selectedClass);c=a(b).data("accordion_header_height");a(b).stop();a(b).animate({height:c+"px"},{queue:false,duration:this.options.hideDuration,easing:"easeOutExpo",complete:function(){a(this).css({overflow:"hidden",height:c+"px"})}});a(".accordion_header",b).removeClass("accordion_header_selected")}},prototype:{init:function(){var b=this;this.items=a(".accordion_item",this.elem);this.itemsCount=this.items.length;this.shortCircuit=false;if(!this.itemsCount){this.shortCircuit=true;return}this.current=this.items.filter("."+b.options.selectedClass);this.items.each(function(){var c=this,d=a(".accordion_content",this);if(d.length){d=a(d[0]);d.data("accordion_height",d.outerHeight(true));if(!a(this).is("."+b.options.selectedClass));a(".accordion_header",this).bind("click",function(){b.options.show.apply(b,[c]);return false})}var e=0;e=a(".accordion_header",this).outerHeight(true);a(c).data("accordion_header_height",e);e+=a(".accordion_content",this).outerHeight(true);a(c).data("accordion_height",e);!a(this).is("."+b.options.selectedClass)&&a(c).css({height:a(c).data("accordion_header_height")+"px",overflow:"hidden"});a(".accordion_header",this).bind("mouseover",function(){a(this).addClass("accordion_header_hover")});a(".accordion_header",this).bind("mouseout",function(){a(this).removeClass("accordion_header_hover")});if(a(c).is("."+b.options.selectedClass))a(".accordion_header",c).addClass("accordion_header_selected");else a(".accordion_header",c).removeClass("accordion_header_selected")})},showNext:function(){var b=a(this.current).next();if(!b.length)b=a(this.items[0]);this.options.show.apply(this,[b])},hideCurrent:function(){this.current&&this.options.hide.apply(this,[this.current])}}})})(jQuery);