(function($){$.widget("ui.accordion",{_init:function(){var o=this.options,self=this;this.running=0;if(o.collapsible==$.ui.accordion.defaults.collapsible&&o.alwaysOpen!=$.ui.accordion.defaults.alwaysOpen){o.collapsible=!o.alwaysOpen}if(o.navigation){var b=this.element.find("a").filter(o.navigationFilter);if(b.length){if(b.filter(o.header).length){this.active=b}else{this.active=b.parent().parent().prev();b.addClass("ui-accordion-content-active")}}}this.element.addClass("ui-accordion ui-widget ui-helper-reset");if(this.element[0].nodeName=="UL"){this.element.children("li").addClass("ui-accordion-li-fix")}this.headers=this.element.find(o.header).addClass("ui-accordion-header ui-helper-reset ui-state-default").bind("mouseenter.accordion",function(){$(this).addClass('ui-state-hover')}).bind("mouseleave.accordion",function(){$(this).removeClass('ui-state-hover')}).bind("focus.accordion",function(){$(this).addClass('ui-state-focus')}).bind("blur.accordion",function(){$(this).removeClass('ui-state-focus')});this.headers.next().addClass("ui-accordion-content ui-helper-reset ui-widget-content");this.active=this._findActive(this.active||o.active).toggleClass("ui-state-default").toggleClass("ui-state-active");this.active.next().addClass('ui-accordion-content-active');if($.browser.msie){this.element.find('a').css('zoom','1')}this.resize();this.element.attr('role','tablist');this.headers.attr('role','tab').bind('keydown',function(a){return self._keydown(a)}).next().attr('role','tabpanel');this.headers.not(this.active||"").attr('aria-expanded','false').attr("tabIndex","-1").next().hide();if(!this.active.length){this.headers.eq(0).attr('tabIndex','0')}else{this.active.attr('aria-expanded','true').attr('tabIndex','0')}if(!$.browser.safari)this.headers.find('a').attr('tabIndex','-1');if(o.event){this.headers.bind((o.event)+".accordion",function(a){return self._clickHandler.call(self,a,this)})}},destroy:function(){var o=this.options;this.element.removeClass("ui-accordion ui-widget ui-helper-reset").removeAttr("role").unbind('.accordion').removeData('accordion');this.headers.unbind(".accordion").removeClass("ui-accordion-header ui-helper-reset ui-state-default ui-state-active ").removeAttr("role").removeAttr("aria-expanded").removeAttr("tabindex");this.headers.find("a").removeAttr("tabindex");this.headers.children(".ui-icon").remove();var a=this.headers.next().css("display","").removeAttr("role").removeClass("ui-helper-reset ui-widget-content ui-accordion-content ui-accordion-content-active");if(o.autoHeight||o.fillHeight){a.css("height","")}},_setData:function(a,b){if(a=='alwaysOpen'){a='collapsible';b=!b}$.widget.prototype._setData.apply(this,arguments)},_keydown:function(a){var o=this.options,keyCode=$.ui.keyCode;if(o.disabled||a.altKey||a.ctrlKey)return;var b=this.headers.length;var c=this.headers.index(a.target);var d=false;switch(a.keyCode){case keyCode.RIGHT:case keyCode.DOWN:d=this.headers[(c+1)%b];break;case keyCode.LEFT:case keyCode.UP:d=this.headers[(c-1+b)%b];break;case keyCode.SPACE:case keyCode.ENTER:return this._clickHandler({target:a.target},a.target)}if(d){$(a.target).attr('tabIndex','-1');$(d).attr('tabIndex','0');d.focus();return false}return true},resize:function(){var o=this.options,maxHeight;if(o.fillSpace){if($.browser.msie){var a=this.element.parent().css('overflow');this.element.parent().css('overflow','hidden')}maxHeight=this.element.parent().height();if($.browser.msie){this.element.parent().css('overflow',a)}this.headers.each(function(){maxHeight-=$(this).outerHeight()});var b=0;this.headers.next().each(function(){b=Math.max(b,$(this).innerHeight()-$(this).height())}).height(Math.max(0,maxHeight-b)).css('overflow','auto')}else if(o.autoHeight){maxHeight=0;this.headers.next().each(function(){maxHeight=Math.max(maxHeight,$(this).outerHeight())}).height(maxHeight)}},activate:function(a){var b=this._findActive(a)[0];this._clickHandler({target:b},b)},_findActive:function(a){return a?typeof a=="number"?this.headers.filter(":eq("+a+")"):this.headers.not(this.headers.not(a)):a===false?$([]):this.headers.filter(":eq(0)")},_clickHandler:function(a,b){var o=this.options;if(o.disabled)return false;if(!a.target&&o.collapsible){this.active.removeClass("ui-state-active").addClass("ui-state-default").removeClass(o.icons.headerSelected);this.active.next().addClass('ui-accordion-content-active');var c=this.active.next(),data={options:o,newHeader:$([]),oldHeader:o.active,newContent:$([]),oldContent:c},f=(this.active=$([]));this._toggle(f,c,data);return false}var d=$(a.currentTarget||b);var e=d[0]==this.active[0];if(this.running||(!o.collapsible&&e)){return false}this.active.removeClass("ui-state-active").addClass("ui-state-default").removeClass(o.icons.headerSelected);this.active.next().addClass('ui-accordion-content-active');if(!e){d.removeClass("ui-state-default").addClass("ui-state-active");d.next().addClass('ui-accordion-content-active')}var f=d.next(),c=this.active.next(),data={options:o,newHeader:e&&o.collapsible?$([]):d,oldHeader:this.active,newContent:e&&o.collapsible?$([]):f.find('> *'),oldContent:c.find('> *')},down=this.headers.index(this.active[0])>this.headers.index(d[0]);this.active=e?$([]):d;this._toggle(f,c,data,e,down);return false},_toggle:function(b,c,d,e,f){var o=this.options,self=this;this.toShow=b;this.toHide=c;this.data=d;var g=function(){if(!self)return;return self._completed.apply(self,arguments)};this._trigger("changestart",null,this.data);this.running=c.size()===0?b.size():c.size();if(o.animated){var h={};if(o.collapsible&&e){h={toShow:$([]),toHide:c,complete:g,down:f,autoHeight:o.autoHeight||o.fillSpace}}else{h={toShow:b,toHide:c,complete:g,down:f,autoHeight:o.autoHeight||o.fillSpace}}if(!o.proxied){o.proxied=o.animated}if(!o.proxiedDuration){o.proxiedDuration=o.duration}o.animated=$.isFunction(o.proxied)?o.proxied(h):o.proxied;o.duration=$.isFunction(o.proxiedDuration)?o.proxiedDuration(h):o.proxiedDuration;var i=$.ui.accordion.animations,duration=o.duration,easing=o.animated;if(!i[easing]){i[easing]=function(a){this.slide(a,{easing:easing,duration:duration||700})}}i[easing](h)}else{if(o.collapsible&&e){b.toggle()}else{c.hide();b.show()}g(true)}c.prev().attr('aria-expanded','false').attr("tabIndex","-1").blur();b.prev().attr('aria-expanded','true').attr("tabIndex","0").focus()},_completed:function(a){var o=this.options;this.running=a?0:--this.running;if(this.running)return;if(o.clearStyle){this.toShow.add(this.toHide).css({height:"",overflow:""})}this._trigger('change',null,this.data)}});$.extend($.ui.accordion,{version:"1.7.1",defaults:{active:false,alwaysOpen:true,animated:'slide',autoHeight:false,clearStyle:false,collapsible:true,event:"click",fillSpace:false,header:"> li > :first-child,> :not(li):even",icons:{header:"ui-icon-triangle-1-e",headerSelected:"ui-icon-triangle-1-s"},navigation:false,navigationFilter:function(){return this.href.toLowerCase()==location.href.toLowerCase()}},animations:{slide:function(c,d){c=$.extend({easing:"swing",duration:300},c,d);if(!c.toHide.size()){c.toShow.animate({height:"show"},c);return}if(!c.toShow.size()){c.toHide.animate({height:"hide"},c);return}var e=c.toShow.css('overflow'),percentDone,showProps={},hideProps={},fxAttrs=["height","paddingTop","paddingBottom"],originalWidth;var s=c.toShow;originalWidth=s[0].style.width;s.width(parseInt(s.parent().width(),10)-parseInt(s.css("paddingLeft"),10)-parseInt(s.css("paddingRight"),10)-(parseInt(s.css("borderLeftWidth"),10)||0)-(parseInt(s.css("borderRightWidth"),10)||0));$.each(fxAttrs,function(i,a){hideProps[a]='hide';var b=(''+$.css(c.toShow[0],a)).match(/^([\d+-.]+)(.*)$/);showProps[a]={value:b[1],unit:b[2]||'px'}});c.toShow.css({height:0,overflow:'hidden'}).show();c.toHide.filter(":hidden").each(c.complete).end().filter(":visible").animate(hideProps,{step:function(a,b){if(b.prop=='height'){percentDone=(b.now-b.start)/(b.end-b.start)}c.toShow[0].style[b.prop]=(percentDone*showProps[b.prop].value)+showProps[b.prop].unit},duration:c.duration,easing:c.easing,complete:function(){if(!c.autoHeight){c.toShow.css("height","")}c.toShow.css("width",originalWidth);c.toShow.css({overflow:e});c.complete()}})},bounceslide:function(a){this.slide(a,{easing:a.down?"easeOutBounce":"swing",duration:a.down?1000:200})},easeslide:function(a){this.slide(a,{easing:"easeinout",duration:700})}}})})(jQuery);