/*
 * jQuery Orbit Plugin 1.3.0
 * www.ZURB.com/playground
 * Copyright 2010, ZURB
 * Free to use under the MIT license.
 * http://www.opensource.org/licenses/mit-license.php
*/
(function(a){var b={defaults:{animation:"horizontal-push",animationSpeed:600,timer:!0,advanceSpeed:4e3,pauseOnHover:!1,startClockOnMouseOut:!1,startClockOnMouseOutAfter:1e3,directionalNav:!0,directionNavOnHover:!1,captions:!0,captionAnimation:"fade",captionAnimationSpeed:600,bullets:!1,bulletThumbs:!1,bulletThumbLocation:"",afterSlideChange:a.noop,fluid:!0,centerBullets:!0},activeSlide:0,numberSlides:0,orbitWidth:null,orbitHeight:null,fixedRatio:null,locked:null,timerRunning:null,degrees:0,wrapperHTML:'<div class="orbit-wrapper" />',timerHTML:'<div class="timer"><span class="mask"><span class="rotator"></span></span><span class="pause"></span></div>',captionHTML:'<div class="orbit-caption"></div>',directionalNavHTML:'<div class="slider-nav"><span class="right">Right</span><span class="left">Left</span></div>',bulletHTML:'<ul class="orbit-bullets"></ul>',init:function(b,c){var d,e=0,f=this;this.clickTimer=a.proxy(this.clickTimer,this),this.addBullet=a.proxy(this.addBullet,this),this.resetAndUnlock=a.proxy(this.resetAndUnlock,this),this.stopClock=a.proxy(this.stopClock,this),this.startTimerAfterMouseLeave=a.proxy(this.startTimerAfterMouseLeave,this),this.clearClockMouseLeaveTimer=a.proxy(this.clearClockMouseLeaveTimer,this),this.rotateTimer=a.proxy(this.rotateTimer,this),this.options=a.extend({},this.defaults,c),this.options.timer==="false"&&(this.options.timer=!1),this.options.captions==="false"&&(this.options.captions=!1),this.options.directionalNav==="false"&&(this.options.directionalNav=!1),this.options.directionalNavOnHover==="false"&&(this.options.directionalNavOnHover=!1),this.$element=a(b),this.$wrapper=this.$element.wrap(this.wrapperHTML).parent(),this.$slides=this.$element.children("img, a, div"),this.$element.bind("orbit.next",function(){f.shift("next")}),this.$element.bind("orbit.prev",function(){f.shift("prev")}),this.$element.bind("orbit.goto",function(a,b){f.shift(b)}),this.$element.bind("orbit.start",function(a,b){f.startClock()}),this.$element.bind("orbit.stop",function(a,b){f.stopClock()}),d=this.$slides.filter("img"),d.length===0?this.loaded():d.bind("imageready",function(){e+=1,e===d.length&&f.loaded()})},loaded:function(){this.$element.addClass("orbit").css({width:"1px",height:"1px"}),this.showAllSlides(),this.setDimentionsFromLargestSlide(),this.updateOptionsIfOnlyOneSlide(),this.setupFirstSlide(),this.options.timer&&(this.setupTimer(),this.startClock()),this.options.captions&&this.setupCaptions(),this.options.directionalNav&&this.setupDirectionalNav(),this.options.bullets&&(this.setupBulletNav(),this.setActiveBullet())},currentSlide:function(){return this.$slides.eq(this.activeSlide)},showAllSlides:function(){this.$slides.css({display:"block"})},setDimentionsFromLargestSlide:function(){var b=this,c;b.$element.add(b.$wrapper).width(this.$slides.first().width()),b.$element.add(b.$wrapper).height(this.$slides.first().height()),b.orbitWidth=this.$slides.first().width(),b.orbitHeight=this.$slides.first().height(),c=this.$slides.first().clone(),this.$slides.each(function(){var d=a(this),e=d.width(),f=d.height();e>b.$element.width()&&(b.$element.add(b.$wrapper).width(e),b.orbitWidth=b.$element.width()),f>b.$element.height()&&(b.$element.add(b.$wrapper).height(f),b.orbitHeight=b.$element.height(),c=a(this).clone()),b.numberSlides+=1});if(this.options.fluid){typeof this.options.fluid=="string"&&(c=a('<img src="http://placehold.it/'+this.options.fluid+'" />')),b.$element.prepend(c),c.addClass("fluid-placeholder"),b.$element.add(b.$wrapper).css({width:"inherit"}),b.$element.add(b.$wrapper).css({height:"inherit"});var d=b.options.fixedRatio?function(){var a=b.orbitWidth*b.options.fixedRatio;b.$slides.height(a),b.$element.add(b.$wrapper).css({height:a})}:function(){return!1};a(window).bind("resize",function(){b.orbitWidth=b.$element.width(),b.orbitHeight=b.$element.height(),d()}),d()}},lock:function(){this.locked=!0},unlock:function(){this.locked=!1},updateOptionsIfOnlyOneSlide:function(){this.$slides.length===1&&(this.options.directionalNav=!1,this.options.timer=!1,this.options.bullets=!1)},setupFirstSlide:function(){var a=this;this.$slides.first().css({"z-index":3}).fadeIn(function(){a.$slides.css({display:"block"})})},startClock:function(){var a=this;if(!this.options.timer)return!1;this.$timer.is(":hidden")?this.clock=setInterval(function(){this.$element.trigger("orbit.next")},this.options.advanceSpeed):(this.timerRunning=!0,this.$pause.removeClass("active"),this.clock=setInterval(this.rotateTimer,this.options.advanceSpeed/180))},rotateTimer:function(){var a="rotate("+this.degrees+"deg)";this.degrees+=2,this.$rotator.css({"-webkit-transform":a,"-moz-transform":a,"-o-transform":a}),this.degrees>180&&(this.$rotator.addClass("move"),this.$mask.addClass("move")),this.degrees>360&&(this.$rotator.removeClass("move"),this.$mask.removeClass("move"),this.degrees=0,this.$element.trigger("orbit.next"))},stopClock:function(){if(!this.options.timer)return!1;this.timerRunning=!1,clearInterval(this.clock),this.$pause.addClass("active")},setupTimer:function(){this.$timer=a(this.timerHTML),this.$wrapper.append(this.$timer),this.$rotator=this.$timer.find(".rotator"),this.$mask=this.$timer.find(".mask"),this.$pause=this.$timer.find(".pause"),this.$timer.click(this.clickTimer),this.options.startClockOnMouseOut&&(this.$wrapper.mouseleave(this.startTimerAfterMouseLeave),this.$wrapper.mouseenter(this.clearClockMouseLeaveTimer)),this.options.pauseOnHover&&this.$wrapper.mouseenter(this.stopClock)},startTimerAfterMouseLeave:function(){var a=this;this.outTimer=setTimeout(function(){a.timerRunning||a.startClock()},this.options.startClockOnMouseOutAfter)},clearClockMouseLeaveTimer:function(){clearTimeout(this.outTimer)},clickTimer:function(){this.timerRunning?this.stopClock():this.startClock()},setupCaptions:function(){this.$caption=a(this.captionHTML),this.$wrapper.append(this.$caption),this.setCaption()},setCaption:function(){var b=this.currentSlide().attr("data-caption"),c;if(!this.options.captions)return!1;if(b){c=a(b).html(),this.$caption.attr("id",b).html(c);switch(this.options.captionAnimation){case"none":this.$caption.show();break;case"fade":this.$caption.fadeIn(this.options.captionAnimationSpeed);break;case"slideOpen":this.$caption.slideDown(this.options.captionAnimationSpeed)}}else switch(this.options.captionAnimation){case"none":this.$caption.hide();break;case"fade":this.$caption.fadeOut(this.options.captionAnimationSpeed);break;case"slideOpen":this.$caption.slideUp(this.options.captionAnimationSpeed)}},setupDirectionalNav:function(){var b=this;this.$wrapper.append(this.directionalNavHTML),this.$wrapper.find(".left").click(function(){b.stopClock(),b.$element.trigger("orbit.prev")}),this.$wrapper.find(".right").click(function(){b.stopClock(),b.$element.trigger("orbit.next")}),b.options.directionalNavOnHover&&(b.$wrapper.bind("mouseenter mouseleave",function(b){var c=(b.type=="mouseleave"?"remove":"add")+"Class";a(this).find(".slider-nav")[c]("visible")}),b.$wrapper.trigger("mouseleave"))},setupBulletNav:function(){this.$bullets=a(this.bulletHTML),this.$wrapper.append(this.$bullets),this.$slides.each(this.addBullet),this.$element.addClass("with-bullets"),this.options.centerBullets&&this.$bullets.css("margin-left",-this.$bullets.width()/2)},addBullet:function(b,c){var d=b+1,e=a("<li>"+d+"</li>"),f,g=this;this.options.bulletThumbs&&(f=a(c).attr("data-thumb"),f&&e.addClass("has-thumb").css({background:"url("+this.options.bulletThumbLocation+f+") no-repeat"})),this.$bullets.append(e),e.data("index",b),e.click(function(){g.stopClock(),g.$element.trigger("orbit.goto",[e.data("index")])})},setActiveBullet:function(){if(!this.options.bullets)return!1;this.$bullets.find("li").removeClass("active").eq(this.activeSlide).addClass("active")},resetAndUnlock:function(){this.$slides.eq(this.prevActiveSlide).css({"z-index":1}),this.unlock(),this.options.afterSlideChange.call(this,this.$slides.eq(this.prevActiveSlide),this.$slides.eq(this.activeSlide))},shift:function(a){var b=a;this.prevActiveSlide=this.activeSlide;if(this.prevActiveSlide==b)return!1;if(this.$slides.length=="1")return!1;this.locked||(this.lock(),a=="next"?(this.activeSlide++,this.activeSlide==this.numberSlides&&(this.activeSlide=0)):a=="prev"?(this.activeSlide--,this.activeSlide<0&&(this.activeSlide=this.numberSlides-1)):(this.activeSlide=a,this.prevActiveSlide<this.activeSlide?b="next":this.prevActiveSlide>this.activeSlide&&(b="prev")),this.setActiveBullet(),this.$slides.eq(this.prevActiveSlide).css({"z-index":2}),this.options.animation=="fade"&&this.$slides.eq(this.activeSlide).css({opacity:0,"z-index":3}).animate({opacity:1},this.options.animationSpeed,this.resetAndUnlock),this.options.animation=="horizontal-slide"&&(b=="next"&&this.$slides.eq(this.activeSlide).css({left:this.orbitWidth,"z-index":3}).animate({left:0},this.options.animationSpeed,this.resetAndUnlock),b=="prev"&&this.$slides.eq(this.activeSlide).css({left:-this.orbitWidth,"z-index":3}).animate({left:0},this.options.animationSpeed,this.resetAndUnlock)),this.options.animation=="vertical-slide"&&(b=="prev"&&this.$slides.eq(this.activeSlide).css({top:this.orbitHeight,"z-index":3}).animate({top:0},this.options.animationSpeed,this.resetAndUnlock),b=="next"&&this.$slides.eq(this.activeSlide).css({top:-this.orbitHeight,"z-index":3}).animate({top:0},this.options.animationSpeed,this.resetAndUnlock)),this.options.animation=="horizontal-push"&&(b=="next"&&(this.$slides.eq(this.activeSlide).css({left:this.orbitWidth,"z-index":3}).animate({left:0},this.options.animationSpeed,this.resetAndUnlock),this.$slides.eq(this.prevActiveSlide).animate({left:-this.orbitWidth},this.options.animationSpeed)),b=="prev"&&(this.$slides.eq(this.activeSlide).css({left:-this.orbitWidth,"z-index":3}).animate({left:0},this.options.animationSpeed,this.resetAndUnlock),this.$slides.eq(this.prevActiveSlide).animate({left:this.orbitWidth},this.options.animationSpeed))),this.options.animation=="vertical-push"&&(b=="next"&&(this.$slides.eq(this.activeSlide).css({top:-this.orbitHeight,"z-index":3}).animate({top:0},this.options.animationSpeed,this.resetAndUnlock),this.$slides.eq(this.prevActiveSlide).animate({top:this.orbitHeight},this.options.animationSpeed)),b=="prev"&&(this.$slides.eq(this.activeSlide).css({top:this.orbitHeight,"z-index":3}).animate({top:0},this.options.animationSpeed,this.resetAndUnlock),this.$slides.eq(this.prevActiveSlide).animate({top:-this.orbitHeight},this.options.animationSpeed))),this.setCaption())}};a.fn.orbit=function(c){return this.each(function(){var d=a.extend({},b);d.init(this,c)})}})(jQuery),function(a){function c(b,c){var d=a(b);d.bind("load.imageready",function(){c.apply(b,arguments),d.unbind("load.imageready")})}var b={};a.event.special.imageready={setup:function(a,c,d){b=a||b},add:function(d){var e=a(this),f;this.nodeType===1&&this.tagName.toLowerCase()==="img"&&this.src!==""&&(b.forceLoad?(f=e.attr("src"),e.attr("src",""),c(this,d.handler),e.attr("src",f)):this.complete||this.readyState===4?d.handler.apply(this,arguments):c(this,d.handler))},teardown:function(b){a(this).unbind(".imageready")}}}(jQuery);
