/*
Accordion Slider - v2.8
Homepage: http://bqworks.com/accordion-slider/
Author: bqworks
Author URL: http://bqworks.com/
*/
(function(g,d){d.AccordionSlider={modules:{},addModule:function(a,f,c){"undefined"===typeof this.modules[c]&&(this.modules[c]=[]);this.modules[c].push(a);"accordion"===c?d.extend(b.prototype,f):"panel"===c&&d.extend(k.prototype,f)}};var e=d.AccordionSlider.namespace="AccordionSlider",b=function(a,f){this.$accordion=d(a);this.$maskContainer=this.$panelsContainer=null;this.options=f;this.settings={};this.originalSettings={};this.currentIndex=-1;this.computedPanelDistance=this.closedPanelSize=this.collapsedPanelSize=
this.maxComputedOpenedPanelSize=this.computedOpenedPanelSize=this.totalPanelsSize=this.totalSize=this.currentPage=0;this.panels=[];this.mouseDelayTimer=0;this.openPanelAnimation={};this.closePanelsAnimation={};this.uniqueId=(new Date).valueOf();this.breakpoints=[];this.previousVisiblePanels=this.currentBreakpoint=-1;this.isPageScrolling=!1;this.positionProperty="left";this.sizeProperty="width";this.autoResponsiveRatio=1;this.isOverlapping=!1;this._init()};b.prototype={_init:function(){var a=this;
this.$accordion.removeClass("as-no-js");this.$maskContainer=d('
').appendTo(this.$accordion);this.$panelsContainer=this.$accordion.find(".as-panels").appendTo(this.$maskContainer);0===this.$panelsContainer.length&&(this.$panelsContainer=d('').appendTo(this.$maskContainer));var f=d.AccordionSlider.modules.accordion;if("undefined"!==typeof f)for(var c=0;c=c.size?1:-1})}this._prepareRAF();this.update();-1!==this.currentIndex&&(this.$accordion.find(".as-panel").eq(this.currentIndex).addClass("as-opened"),
p={type:"panelOpen",index:this.currentIndex,previousIndex:-1},this.trigger(p),d.isFunction(this.settings.panelOpen)&&this.settings.panelOpen.call(this,p));this.on("mouseenter."+e,function(c){c={type:"accordionMouseOver"};a.trigger(c);d.isFunction(a.settings.accordionMouseOver)&&a.settings.accordionMouseOver.call(a,c)});this.on("mouseleave."+e,function(c){clearTimeout(a.mouseDelayTimer);!0===a.settings.closePanelsOnMouseOut&&a.closePanels();c={type:"accordionMouseOut"};a.trigger(c);d.isFunction(a.settings.accordionMouseOut)&&
a.settings.accordionMouseOut.call(a,c)});d(g).on("resize."+this.uniqueId+"."+e,function(){a.resize()});this.trigger({type:"init"});d.isFunction(this.settings.init)&&this.settings.init.call(this,{type:"init"})},update:function(){"horizontal"===this.settings.orientation?(this.$accordion.removeClass("as-vertical").addClass("as-horizontal"),this.positionProperty="left",this.sizeProperty="width"):"vertical"===this.settings.orientation&&(this.$accordion.removeClass("as-horizontal").addClass("as-vertical"),
this.positionProperty="top",this.sizeProperty="height");if(-1===this.settings.visiblePanels)this.currentPage=0;else if(-1!==this.currentIndex)this.currentPage=Math.floor(this.currentIndex/this.settings.visiblePanels);else if(this.settings.visiblePanels!==this.previousVisiblePanels&&-1!==this.previousVisiblePanels){var a=Math.round(this.currentPage*this.previousVisiblePanels/this.settings.visiblePanels);this.currentPage!==a&&(this.currentPage=a)}0this.autoResponsiveRatio?this.$maskContainer.css({"-webkit-transform":"scaleX("+this.autoResponsiveRatio+") scaleY("+this.autoResponsiveRatio+")","-ms-transform":"scaleX("+this.autoResponsiveRatio+") scaleY("+this.autoResponsiveRatio+
")",transform:"scaleX("+this.autoResponsiveRatio+") scaleY("+this.autoResponsiveRatio+")","-webkit-transform-origin":"top left","-ms-transform-origin":"top left","transform-origin":"top left"}):this.$maskContainer.css({"-webkit-transform":"","-ms-transform":"",transform:"","-webkit-transform-origin":"","-ms-transform-origin":"","transform-origin":""}),this.totalSize="horizontal"===this.settings.orientation?this.$maskContainer.innerWidth():this.$maskContainer.innerHeight()):this.totalSize="horizontal"===
this.settings.orientation?this.$accordion.innerWidth():this.$accordion.innerHeight()):(this.$accordion.css({width:this.settings.width,height:this.settings.height,maxWidth:"",maxHeight:""}),this.totalSize="horizontal"===this.settings.orientation?this.$accordion.innerWidth():this.$accordion.innerHeight());"horizontal"===this.settings.orientation?this.$accordion.find("img.as-background, img.as-background-opened").css("height",this.$panelsContainer.innerHeight()):this.$accordion.find("img.as-background, img.as-background-opened").css("width",
this.$panelsContainer.innerWidth());this.computedPanelDistance=this.settings.panelDistance;"string"===typeof this.computedPanelDistance&&(-1!==this.computedPanelDistance.indexOf("%")?this.computedPanelDistance=this.totalSize*(parseInt(this.computedPanelDistance,10)/100):-1!==this.computedPanelDistance.indexOf("px")&&(this.computedPanelDistance=parseInt(this.computedPanelDistance,10)));this.closedPanelSize=(this.totalSize-(this.getVisiblePanels()-1)*this.computedPanelDistance)/this.getVisiblePanels();
this.closedPanelSize=Math.floor(this.closedPanelSize);this.computedOpenedPanelSize=this.settings.openedPanelSize;"max"===this.settings.openedPanelSize&&(this.maxComputedOpenedPanelSize=this.settings.maxOpenedPanelSize,"string"===typeof this.maxComputedOpenedPanelSize&&(-1!==this.maxComputedOpenedPanelSize.indexOf("%")?this.maxComputedOpenedPanelSize=this.totalSize*(parseInt(this.maxComputedOpenedPanelSize,10)/100):-1!==this.maxComputedOpenedPanelSize.indexOf("px")&&(this.maxComputedOpenedPanelSize=
parseInt(this.maxComputedOpenedPanelSize,10))));if("string"===typeof this.computedOpenedPanelSize)if(-1!==this.computedOpenedPanelSize.indexOf("%"))this.computedOpenedPanelSize=this.totalSize*(parseInt(this.computedOpenedPanelSize,10)/100);else if(-1!==this.computedOpenedPanelSize.indexOf("px"))this.computedOpenedPanelSize=parseInt(this.computedOpenedPanelSize,10);else if("max"===this.computedOpenedPanelSize&&-1!==this.currentIndex){var b=this.getPanelAt(this.currentIndex).getContentSize();this.computedOpenedPanelSize=
"loading"===b?this.closedPanelSize:Math.min(b,this.maxComputedOpenedPanelSize)}this.collapsedPanelSize=(this.totalSize-this.computedOpenedPanelSize-(this.getVisiblePanels()-1)*this.computedPanelDistance)/(this.getVisiblePanels()-1);this.computedOpenedPanelSize=Math.floor(this.computedOpenedPanelSize);this.collapsedPanelSize=Math.floor(this.collapsedPanelSize);this.totalPanelsSize=this.closedPanelSize*this.getTotalPanels()+this.computedPanelDistance*(this.getTotalPanels()-1);this.$panelsContainer.css(this.sizeProperty,
this.totalPanelsSize);this.totalSize=this.closedPanelSize*this.getVisiblePanels()+this.computedPanelDistance*(this.getVisiblePanels()-1);"custom"===this.settings.responsiveMode||!1===this.settings.responsive?this.$accordion.css(this.sizeProperty,this.totalSize):(this.$accordion.css(this.sizeProperty,this.totalSize*this.autoResponsiveRatio),this.$maskContainer.css(this.sizeProperty,this.totalSize));if(-1!==this.settings.visiblePanels){b={};var c=-(this.totalSize+this.computedPanelDistance)*this.currentPage;
this.currentPage===this.getTotalPages()-1&&(c=-(this.closedPanelSize*this.getTotalPanels()+this.computedPanelDistance*(this.getTotalPanels()-1)-this.totalSize));b[this.positionProperty]=c;this.$panelsContainer.css(b)}var e=this.currentPage===this.getTotalPages()-1&&0!==this.getTotalPanels()%this.settings.visiblePanels?this.settings.visiblePanels-this.getTotalPanels()%this.settings.visiblePanels:0;d.each(this.panels,function(b,c){if(-1===a.currentIndex)var f=b*(a.closedPanelSize+a.computedPanelDistance);
else-1===a.settings.visiblePanels?f=b*(a.collapsedPanelSize+a.computedPanelDistance)+(b>a.currentIndex?a.computedOpenedPanelSize-a.collapsedPanelSize:0):a._getPageOfPanel(b)===a.currentPage?(f=a.currentPage*(a.totalSize+a.computedPanelDistance)+(b+e-a.currentPage*a.settings.visiblePanels)*(a.collapsedPanelSize+a.computedPanelDistance)+(b>a.currentIndex?a.computedOpenedPanelSize-a.collapsedPanelSize:0),a.currentPage===a.getTotalPages()-1&&0!==e&&(f-=(a.getTotalPages()-a.getTotalPanels()/a.settings.visiblePanels)*
(a.totalSize+a.computedPanelDistance))):f=b*(a.closedPanelSize+a.computedPanelDistance);c.setPosition(f);!1===a.isOverlapping&&(f=-1===a.currentIndex||-1!==a.settings.visiblePanels&&a._getPageOfPanel(b)!==a.currentPage?a.closedPanelSize:b===a.currentIndex?a.computedOpenedPanelSize:a.collapsedPanelSize,c.setSize(f))});if(null!==this.settings.breakpoints&&0this.breakpoints[this.breakpoints.length-1].size&&-1!==this.currentBreakpoint)this.currentBreakpoint=-1,
this._setProperties(this.originalSettings,!1);else for(b=0,c=this.breakpoints.length;b=this.getTotalPanels()-1?0:this.currentIndex+1;this.openPanel(a)},previousPanel:function(){var a=0>=this.currentIndex?this.getTotalPanels()-1:this.currentIndex-1;this.openPanel(a)},_animatePanels:function(a,b){function c(){1>d?(d=((new Date).valueOf()-f)/b.duration,1=this.getTotalPanels()-this.settings.visiblePanels)){var f=Math.floor(this.currentIndex/this.settings.visiblePanels);f!==this.currentPage&&this.gotoPage(f);this.currentIndex=a}var e=this,k=[],g=[],n=[],m=[],l=[],h=this._getFirstPanelFromPage();f=this._getLastPanelFromPage();var t=0;this.$accordion.find(".as-panel.as-opened").removeClass("as-opened");this.$accordion.find(".as-panel").eq(this.currentIndex).addClass("as-opened");
if("max"===this.settings.openedPanelSize){var q=this.getPanelAt(this.currentIndex).getContentSize();this.computedOpenedPanelSize="loading"===q?this.closedPanelSize:Math.min(q,this.maxComputedOpenedPanelSize);this.collapsedPanelSize=(this.totalSize-this.computedOpenedPanelSize-(this.getVisiblePanels()-1)*this.computedPanelDistance)/(this.getVisiblePanels()-1)}for(;h<=f;h++)q=this.getPanelAt(h),m[h]=q.getPosition(),g[h]=this.currentPage*(this.totalSize+this.computedPanelDistance)+t*(this.collapsedPanelSize+
this.computedPanelDistance)+(h>this.currentIndex?this.computedOpenedPanelSize-this.collapsedPanelSize:0),-1!==this.settings.visiblePanels&&this.currentPage===this.getTotalPages()-1&&(g[h]-=(this.getTotalPages()-this.getTotalPanels()/this.settings.visiblePanels)*(this.totalSize+this.computedPanelDistance)),g[h]!==m[h]&&l.push(h),!1===this.isOverlapping&&(n[h]=q.getSize(),k[h]=h===this.currentIndex?this.computedOpenedPanelSize:this.collapsedPanelSize,k[h]!==n[h]&&-1===d.inArray(h,l)&&l.push(h)),t++;
var u=l.length;this.closePanelsAnimation.page===this.currentPage&&this._stopPanelsAnimation(this.closePanelsAnimation);this._stopPanelsAnimation(this.openPanelAnimation);this.openPanelAnimation.page=this.currentPage;this._animatePanels(this.openPanelAnimation,{duration:this.settings.openPanelDuration,step:function(a){for(var b=0;b=this.getTotalPages()-1?0:this.currentPage+1;this.gotoPage(a)},previousPage:function(){var a=
0>=this.currentPage?this.getTotalPages()-1:this.currentPage-1;this.gotoPage(a)},_getFirstPanelFromPage:function(){return-1===this.settings.visiblePanels?0:this.currentPage===this.getTotalPages()-1&&0!==this.currentPage?this.getTotalPanels()-this.settings.visiblePanels:this.currentPage*this.settings.visiblePanels},_getLastPanelFromPage:function(){return-1===this.settings.visiblePanels?this.getTotalPanels()-1:this.currentPage===this.getTotalPages()-1?this.getTotalPanels()-1:(this.currentPage+1)*this.settings.visiblePanels-
1},_getPageOfPanel:function(a){return this.currentPage===this.getTotalPages()-1&&a>=this.getTotalPanels()-this.settings.visiblePanels?this.getTotalPages()-1:Math.floor(a/this.settings.visiblePanels)},_updatePaginationButtons:function(){var a=this.$accordion.find(".as-pagination-buttons"),b=this,c=this.getTotalPages();if(1>=c&&0!==a.length)a.remove(),a.off("click."+e,".as-pagination-button"),this.off("pageScroll."+e),this.$accordion.removeClass("as-has-buttons");else if(1