(function(a){a.fn.orbit=function(b){b=a.extend({animation:"fade",animationSpeed:800,timer:true,advanceSpeed:10000,pauseOnHover:false,startClockOnMouseOut:false,startClockOnMouseOutAfter:1000,directionalNav:true,captions:true,captionAnimation:"fade",captionAnimationSpeed:800,bullets:false,bulletThumbs:false,bulletThumbLocation:"",afterSlideChange:function(){}},b);return this.each(function(){function J(){if(b.timer){if(H.is(":hidden")){m=setInterval(function(){S("next")},b.advanceSpeed)}else{N=true;R.removeClass("active");m=setInterval(function(){var d="rotate("+Q+"deg)";Q+=2;h.css({"-webkit-transform":d,"-moz-transform":d,"-o-transform":d});if(Q>180){h.addClass("move");O.addClass("move")}if(Q>360){h.removeClass("move");O.removeClass("move");Q=0;S("next")}},b.advanceSpeed/180)}}else{return false}}function P(){if(b.timer){N=false;clearInterval(m);R.addClass("active")}else{return false}}function M(){if(b.captions){var d=Y.eq(Z).data("caption");if(_captionHTML=a(d).html()){U.attr("id",d).html(_captionHTML);b.captionAnimation=="none"&&U.show();b.captionAnimation=="fade"&&U.fadeIn();b.captionAnimation=="slideOpen"&&U.slideDown()}else{b.captionAnimation=="none"&&U.hide();b.captionAnimation=="fade"&&U.fadeOut();b.captionAnimation=="slideOpen"&&U.slideUp()}}else{return false}}function L(){if(b.bullets){G.children("li").removeClass("active").eq(Z).addClass("active")}else{return false}}function S(k){function j(){Y.eq(d).css({"z-index":1});g=false;b.afterSlideChange.call(this)}var d=Z,f=k;if(d==f){return false}if(!g){g=true;if(k=="next"){Z++;if(Z==K){Z=0}}else{if(k=="prev"){Z--;if(Z<0){Z=K-1}}else{Z=k;if(d<Z){f="next"}else{if(d>Z){f="prev"}}}}L();Y.eq(d).css({"z-index":2});b.animation=="fade"&&Y.eq(Z).css({opacity:0,"z-index":3}).animate({opacity:1},b.animationSpeed,j);if(b.animation=="horizontal-slide"){f=="next"&&Y.eq(Z).css({left:V,"z-index":3}).animate({left:0},b.animationSpeed,j);f=="prev"&&Y.eq(Z).css({left:-V,"z-index":3}).animate({left:0},b.animationSpeed,j)}if(b.animation=="vertical-slide"){f=="prev"&&Y.eq(Z).css({top:e,"z-index":3}).animate({top:0},b.animationSpeed,j);f=="next"&&Y.eq(Z).css({top:-e,"z-index":3}).animate({top:0},b.animationSpeed,j)}if(b.animation=="horizontal-push"){if(f=="next"){Y.eq(Z).css({left:V,"z-index":3}).animate({left:0},b.animationSpeed,j);Y.eq(d).animate({left:-V},b.animationSpeed)}if(f=="prev"){Y.eq(Z).css({left:-V,"z-index":3}).animate({left:0},b.animationSpeed,j);Y.eq(d).animate({left:V},b.animationSpeed)}}M()}}var Z=0,K=0,V,e,g,W=a(this).addClass("orbit"),X=W.wrap('<div class="orbit-wrapper" />').parent();W.add(V).width("1px").height("1px");var Y=W.find("img, a img, div");Y.each(function(){var f=a(this),d=f.width();f=f.height();if(d>W.width()){W.add(X).width(d);V=W.width()}if(f>W.height()){W.add(X).height(f);e=W.height()}K++});Y.eq(Z).css({"z-index":3}).fadeIn(function(){Y.css({display:"block"})});if(b.timer){X.append('<div class="timer"><span class="mask"><span class="rotator"></span></span><span class="pause"></span></div>');var H=a("div.timer"),N;if(H.length!=0){var h=a("div.timer span.rotator"),O=a("div.timer span.mask"),R=a("div.timer span.pause"),Q=0,m;J();H.click(function(){N?P():J()});if(b.startClockOnMouseOut){var I;X.mouseleave(function(){I=setTimeout(function(){N||J()},b.startClockOnMouseOutAfter)});X.mouseenter(function(){clearTimeout(I)})}}}b.pauseOnHover&&X.mouseenter(function(){P()});if(b.captions){X.append('<div class="orbit-caption"></div>');var U=X.children(".orbit-caption");M()}if(b.directionalNav){X.append('<div class="slider-nav"><span class="right">Right</span><span class="left">Left</span></div>');var T=X.children("div.slider-nav").children("span.left"),c=X.children("div.slider-nav").children("span.right");T.click(function(){P();S("prev")});c.click(function(){P();S("next")})}if(b.bullets){X.append('<ul class="orbit-bullets"></ul>');var G=a("ul.orbit-bullets");for(i=0;i<K;i++){T=a("<li>"+(i+1)+"</li>");if(b.bulletThumbs){if(c=Y.eq(i).data("thumb")){T=a('<li class="has-thumb">'+i+"</li>");T.css({background:"url("+b.bulletThumbLocation+c+") no-repeat"})}}a("ul.orbit-bullets").append(T);T.data("index",i);T.click(function(){P();S(a(this).data("index"))})}L()}})}})(jQuery);
