(function($){"use strict";$(document).on('cycle-bootstrap',function(e,opts,API){if(opts.fx!=='carousel')return;API.getSlideIndex=function(el){var slides=this.opts()._carouselWrap.children();var i=slides.index(el);return i%slides.length;};API.next=function(){var count=opts.reverse?-1:1;if(opts.allowWrap===false&&(opts.currSlide+count)>opts.slideCount-opts.carouselVisible)return;opts.API.advanceSlide(count);opts.API.trigger('cycle-next',[opts]).log('cycle-next');};});$.fn.cycle.transitions.carousel={preInit:function(opts){opts.hideNonActive=false;opts.container.on('cycle-destroyed',$.proxy(this.onDestroy,opts.API));opts.API.stopTransition=this.stopTransition;for(var i=0;i<opts.startingSlide;i++){opts.container.append(opts.slides[0]);}},postInit:function(opts){var i,j,slide,pagerCutoffIndex,wrap;var vert=opts.carouselVertical;if(opts.carouselVisible&&opts.carouselVisible>opts.slideCount)opts.carouselVisible=opts.slideCount-1;var visCount=opts.carouselVisible||opts.slides.length;var slideCSS={display:vert?'block':'inline-block',position:'static'};opts.container.css({position:'relative',overflow:'hidden'});opts.slides.css(slideCSS);opts._currSlide=opts.currSlide;wrap=$('<div class="cycle-carousel-wrap"></div>').prependTo(opts.container).css({margin:0,padding:0,top:0,left:0,position:'absolute'}).append(opts.slides);opts._carouselWrap=wrap;if(!vert)wrap.css('white-space','nowrap');if(opts.allowWrap!==false){for(j=0;j<(opts.carouselVisible===undefined?2:1);j++){for(i=0;i<opts.slideCount;i++){wrap.append(opts.slides[i].cloneNode(true));}i=opts.slideCount;while(i--){wrap.prepend(opts.slides[i].cloneNode(true));}}wrap.find('.cycle-slide-active').removeClass('cycle-slide-active');opts.slides.eq(opts.startingSlide).addClass('cycle-slide-active');}if(opts.pager&&opts.allowWrap===false){pagerCutoffIndex=opts.slideCount-visCount;$(opts.pager).children().filter(':gt('+pagerCutoffIndex+')').hide();}opts._nextBoundry=opts.slideCount-opts.carouselVisible;this.prepareDimensions(opts);},prepareDimensions:function(opts){var dim,offset,pagerCutoffIndex,tmp,j;var vert=opts.carouselVertical;var visCount=opts.carouselVisible||opts.slides.length;if(opts.carouselFluid&&opts.carouselVisible){if(!opts._carouselResizeThrottle){this.fluidSlides(opts);}}else if(opts.carouselVisible&&opts.carouselSlideDimension){dim=visCount*opts.carouselSlideDimension;opts.container[vert?'height':'width'](dim);}else if(opts.carouselVisible){dim=visCount*$(opts.slides[0])[vert?'outerHeight':'outerWidth'](true);opts.container[vert?'height':'width'](dim);}offset=(opts.carouselOffset||0);if(opts.allowWrap!==false){if(opts.carouselSlideDimension){offset-=((opts.slideCount+opts.currSlide)*opts.carouselSlideDimension);}else{tmp=opts._carouselWrap.children();for(j=0;j<(opts.slideCount+opts.currSlide);j++){offset-=$(tmp[j])[vert?'outerHeight':'outerWidth'](true);}}}opts._carouselWrap.css(vert?'top':'left',offset);},fluidSlides:function(opts){var timeout;var slide=opts.slides.eq(0);var adjustment=slide.outerWidth()-slide.width();var prepareDimensions=this.prepareDimensions;$(window).on('resize',resizeThrottle);opts._carouselResizeThrottle=resizeThrottle;onResize();function resizeThrottle(){clearTimeout(timeout);timeout=setTimeout(onResize,20);}function onResize(){opts._carouselWrap.stop(false,true);var slideWidth=opts.container.width()/opts.carouselVisible;slideWidth=Math.ceil(slideWidth-adjustment);opts._carouselWrap.children().width(slideWidth);if(opts._sentinel)opts._sentinel.width(slideWidth);prepareDimensions(opts);}},transition:function(opts,curr,next,fwd,callback){var moveBy,props={};var hops=opts.nextSlide-opts.currSlide;var vert=opts.carouselVertical;var speed=opts.speed;if(opts.allowWrap===false){fwd=hops>0;var currSlide=opts._currSlide;var maxCurr=opts.slideCount-opts.carouselVisible;if(hops>0&&opts.nextSlide>maxCurr&&currSlide==maxCurr){hops=0;}else if(hops>0&&opts.nextSlide>maxCurr){hops=opts.nextSlide-currSlide-(opts.nextSlide-maxCurr);}else if(hops<0&&opts.currSlide>maxCurr&&opts.nextSlide>maxCurr){hops=0;}else if(hops<0&&opts.currSlide>maxCurr){hops+=opts.currSlide-maxCurr;}else
currSlide=opts.currSlide;moveBy=this.getScroll(opts,vert,currSlide,hops);opts.API.opts()._currSlide=opts.nextSlide>maxCurr?maxCurr:opts.nextSlide;}else{if(fwd&&opts.nextSlide===0){moveBy=this.getDim(opts,opts.currSlide,vert);callback=this.genCallback(opts,fwd,vert,callback);}else if(!fwd&&opts.nextSlide==opts.slideCount-1){moveBy=this.getDim(opts,opts.currSlide,vert);callback=this.genCallback(opts,fwd,vert,callback);}else{moveBy=this.getScroll(opts,vert,opts.currSlide,hops);}}props[vert?'top':'left']=fwd?("-="+moveBy):("+="+moveBy);if(opts.throttleSpeed)speed=(moveBy/$(opts.slides[0])[vert?'height':'width']())*opts.speed;opts._carouselWrap.animate(props,speed,opts.easing,callback);},getDim:function(opts,index,vert){var slide=$(opts.slides[index]);return slide[vert?'outerHeight':'outerWidth'](true);},getScroll:function(opts,vert,currSlide,hops){var i,moveBy=0;if(hops>0){for(i=currSlide;i<currSlide+hops;i++)moveBy+=this.getDim(opts,i,vert);}else{for(i=currSlide;i>currSlide+hops;i--)moveBy+=this.getDim(opts,i,vert);}return moveBy;},genCallback:function(opts,fwd,vert,callback){return function(){var pos=$(opts.slides[opts.nextSlide]).position();var offset=0-pos[vert?'top':'left']+(opts.carouselOffset||0);opts._carouselWrap.css(opts.carouselVertical?'top':'left',offset);callback();};},stopTransition:function(){var opts=this.opts();opts.slides.stop(false,true);opts._carouselWrap.stop(false,true);},onDestroy:function(e){var opts=this.opts();if(opts._carouselResizeThrottle)$(window).off('resize',opts._carouselResizeThrottle);opts.slides.prependTo(opts.container);opts._carouselWrap.remove();}};})(jQuery);