(function(c){var p=function(i,x){if(x==0)return 0;for(;i<0;)i+=x;return i%x},J=function(i){return i==0?0:i<0?-1:1};c.fn.scroller=function(i){var x=arguments;if(typeof i=="string")return c.each(this,function(){var m=c(this).data("jquery-scroller-interface");if(m&&m[i])return m[i].apply(null,c.makeArray(x).slice(1))});var b=c.extend({vertical:false,looping:false,crossfade:false,minItems:1,initialItem:0,scrollSpeed:1,scrollAnimationInterval:50,fadeDurationAuto:2E3,fadeDurationManual:200,fadeInFirst:false,
seamless:false,goByPage:false,naviAddSpaces:false,autoAdvanceInterval:-1,autoAdvanceDirection:1,stopOnMouseOver:true,stopOnInteraction:true,interactionRestartDelay:1E4,enteringView:null,enteredView:null,leavingView:null,leftView:null},i);return c.each(this,function(){function m(){if(!b.looping){j[d==0?"addClass":"removeClass"]("ScrollBackDisabled");j[d==y?"addClass":"removeClass"]("ScrollForwardDisabled")}j.find(".ScrollerCurrentItem").text(p(d,k)+1);q&&q.length&&q.find(">li").removeClass("ScrollerNaviActive").eq(p(d,
k)).addClass("ScrollerNaviActive")}function G(){A=true;if(v){clearTimeout(v);v=null}}function w(a,e){e||(A=false);if(b.autoAdvanceInterval>=0&&!v&&!A)v=setTimeout(O,b.autoAdvanceInterval)}function O(){v=null;B(b.autoAdvanceDirection)}function H(){if(!(b.interactionRestartDelay<0)){G();C&&clearTimeout(C);C=setTimeout(P,b.interactionRestartDelay)}}function P(){C=null;w()}var j=c(this);j.addClass("ScrollerJS");var Q=!!(b.enteringView||b.enteredView||b.leavingView||b.leftView),g=c(".ScrollerItems:first",
this);if(g.length==0)g=j;var f=c(">*",g),k=f.length;c(".ScrollerItemCount",this).text(k);var d=p(b.initialItem,k),y=0;if(k==0||k<b.minItems){b.cirular=false;j.addClass("ScrollerNoItems");m()}else{if(!b.crossfade){var h=0,D=0,r=0;f.each(function(){if(b.vertical){this.size=c(this).outerHeight();var a=c(this).outerWidth()}else{this.size=c(this).outerWidth();a=c(this).outerHeight()}this.position=h;h+=this.size;if(a>D)D=a});var E=c(">*",l);if(b.vertical){g.height(h);g.width(D)}else{g.width(h);g.height(D)}var l=
c(".ScrollerArea:first",this);if(l.length==0){g.css("overflow","hidden");l=c('<div class="ScrollerArea" style="position: relative; overflow: hidden;">');l.height(g.outerHeight());l.width(g.outerWidth());g.after(l);l.append(g)}r=b.vertical?l.innerHeight():l.innerWidth();if(r==0){j.addClass("ScrollerDisabled");m();return}if(b.looping){var K=h;do{l.append(g.clone(true));K+=h}while(K<r+h);E=c(">*",l)}else if(h<=r){j.addClass("ScrollerDisabled");m();return}else f.each(function(a){if(this.position>=h-r&&
y==0)y=a});E.css("position","absolute")}Q&&E.each(function(){this.items=c(">*",this)});var q=c(".ScrollerNavi",this);if(q.length){f.each(function(a){b.naviAddSpaces&&a>0&&q.append(" ");q.append(c("<li />").append(c('<a href="#" />').text(a+1).click(function(){if(b.stopOnInteraction){G();b.autoAdvanceInterval=-1}s(a);return false})))});q.find(">li:first").addClass("ScrollerNaviFirst");q.find(">li:last").addClass("ScrollerNaviLast")}var o=0,t=0,z=null,C=null;if(b.crossfade){var B=function(a){I(a)},
I=function(a){a=d+a;s(b.looping?p(a,k):Math.max(0,Math.min(a,k)))},s=function(a){if(a!=d){var e=d;d=a;e!=-1&&f.eq(e).css("zIndex",1);f.eq(d).css({zIndex:2,visibility:"visible",opacity:0}).animate({opacity:1},A?b.fadeDurationManual:b.fadeDurationAuto,function(){e!=-1&&f.eq(e).css("visibility","hidden");w(null,true)});m()}},L=function(){var a=false;f.each(function(){this.imgs&&c.each(this.imgs,function(){if(!this.complete){a=true;return false}})});if(a)setTimeout(L,200);else if(b.fadeInFirst){var e=
d;d=-1;s(e)}else{f.eq(d).css("visibility","visible");w()}};f.each(function(){c(this).css({visibility:"hidden",position:"absolute",display:"block",zIndex:1});this.imgs=c("img",this);L()})}else{B=function(a){b.goByPage?R(a):I(a)};var R=function(a){var e=0,n=d,u;for(u=d;;u+=a){var M=f[p(u,k)].size;if(e+M>r)break;e+=M;n+=a}s(n)};I=function(a){s(d+a)};s=function(a,e){if(b.looping){var n=J(a-d),u=d;if(n==0)return;for(d=a;u!=a;u+=n)t+=n*f[p(u-(n<0?1:0),k)].size}else{if(a<0)a=0;if(a>=y)a=y;d=a;t=Math.min(f[d].position,
h-r)}m();if(e){o=t;F(2)}else S()};var N=function(){var a=t-o,e=J(a),n=Math.sqrt(Math.abs(a))*b.scrollSpeed;if(n>=Math.abs(a)||t==o){d=p(d,k);o=t=f[d].position;b.looping||(o=t=Math.min(o,h-r));z=null;w(null,true)}else{b.seamless?(o+=e):(o+=e*n);z=setTimeout(N,b.scrollAnimationInterval)}F(z?0:2)},S=function(){if(!z){F(1);z=setTimeout(N,b.scrollAnimationInterval)}},F=function(){var a=-p(o,h);E.each(function(){this.style[b.vertical?"top":"left"]=Math.floor(a)+"px";a+=h})}}var v=null,A=false;if(!b.crossfade){F(2);
w()}m();b.stopOnMouseOver&&c(this).hover(G,w);c(".ScrollerBack",j).click(function(a){b.stopOnInteraction&&H();B(-1);a.preventDefault()});c(".ScrollerForward",j).click(function(a){b.stopOnInteraction&&H();B(1);a.preventDefault()});j.data("jquery-scroller-interface",{gotoindex:s,notifyinteraction:H})}})}})(jQuery);
