//--------------------------------------------------------------------
//File: slaveshow.min.js
//Author: Joseph McCullough. 
//		  http://vertstudios.com/
//		  @Joe_query
//Purpose: Executes a slideshow with optional slaves that follow suit.
//         Features include next, previous, and navigation.
//Last Updated: November 13, 2010
//--------------------------------------------------------------------

function c(d){if((typeof d=='undefined')||(d==null)||(d=="")){return false;}else{return true;}}

(function(d){d.fn.slaveshow=function(e){var f={container:d(this),slides:d(this).children(),duration:3000,transition:500,slaves:[],delay:0,cycles:10};defaultSettings=d.extend(f,d.fn.slaveshow.defaults,e);var g={animating:false,navSelected:false,numAnimating:0,relativeIndex:0,activeIndex:0,slidesTemplate:d(defaultSettings.slides),numSlideShows:0,numSlides:d(defaultSettings.slides).length,totalDelay:0,defaultEntrance:{animation:"fadeIn",speed:500,easing:"jswing"},defaultExit:{animation:"fadeOut",speed:500,easing:"jswing"}};function h(k){for(var i in defaultSettings){this[i]=(c(k[i]))?k[i]:defaultSettings[i];}this.container=d(k.container);this.slides=d(k.container).children();if(g.numSlideShows==0){this.entrance=g.defaultEntrance;this.exit=g.defaultExit;}else{this.entrance=d.extend(true,{},slideshowArray.main.entrance);this.exit=d.extend(true,{},slideshowArray.main.exit);}if(c(k.entrance)){for(var i in this.entrance){this.entrance[i]=k.entrance[i]||this.entrance[i];}}if(c(k.exit)){for(var i in this.exit){this.exit[i]=k.exit[i]||this.exit[i];}}this.cycles=Math.abs(this.cycles);this.delay=Math.abs(this.delay);this.duration=Math.abs(this.duration);if(this.transition.constructor==String){switch(this.transition){case "fade":this.transition=-1*(this.entrance.speed+this.exit.speed);break;case "none":this.transition=0;break;default:this.transition=250;}}g.numSlideShows++;g.totalDelay+=this.delay;}h.prototype.displaySlide=function(k,l){var m=this;g.activeIndex=l;if(k!=0&&(g.numAnimating<g.numSlideShows)){if(g.numAnimating==0)g.animating=true;setTimeout(function(){m.firstSlide=d(m.slides[0]);m.doTransition(m.firstSlide,m.exit);for(var i=0;i<k;i++){m.slides=d(m.slides).arrayShift("first","last");}if(c(defaultSettings.nav)){d(defaultSettings.nav).removeClass('slideNavActive').addClass('slideNavUnclickable');d(defaultSettings.nav).eq(l).addClass('slideNavActive slideNavActiveUnclickable');}},m.delay);setTimeout(function(){m.firstSlide=d(m.slides[0]).hide();d(m.slides).fakeFloat();d(m.slides).slice(1).show(0);m.doTransition(m.firstSlide,m.entrance);setTimeout(function(){g.numAnimating++;if(g.numAnimating==g.numSlideShows){g.animating=false;g.numAnimating=0;d(defaultSettings.nav).removeClass('slideNavUnclickable slideNavActiveUnclickable');}},m.entrance.speed);},(m.delay+m.exit.speed+m.entrance.speed+((g.navSelected==false||(g.navSelected==true&&m.transition<0))?m.transition:0)));}};h.prototype.animate=function(){var k=this;for(var i=1;i<(k.slides.length*k.cycles);i++){setTimeout(function(){if(g.navSelected==false){if(k==slideshowArray.main){(g.activeIndex<g.numSlides-1)?g.activeIndex++:g.activeIndex=0;g.relativeIndex=d(g.slidesTemplate[g.activeIndex]).getIndexOf(slideshowArray["main"].slides);}k.displaySlide(g.relativeIndex,g.activeIndex);}},((k.duration+k.entrance.speed+k.exit.speed+k.transition+g.totalDelay)*i));}};h.prototype.doTransition=function(k,l){var m=l.animation.toLowerCase();var n=d(k).width();var o=l.speed;var p=l.easing;switch(m){case "fromright":d(k).animate({'left':'+='+n+'px','opacity':'show'},0).animate({'left':'-='+n+'px'},{duration:o,easing:p});break;case "fromleft":d(k).animate({'left':'-='+n+'px','opacity':'show'},0).animate({'left':'+='+n+'px'},{duration:o,easing:p});break;case "frombottom":d(k).animate({'top':'+='+n+'px','opacity':'show'},0).animate({'top':'-='+n+'px'},{duration:o,easing:p});break;case "fromtop":d(k).animate({'top':'-='+n+'px','opacity':'show'},0).animate({'top':'+='+n+'px'},{duration:o,easing:p});break;case "fadein":d(k).fadeIn(o);break;case "toleft":d(k).animate({'left':'-='+n+'px'},{duration:o,easing:p}).animate({'opacity':'hide','left':'+='+n+'px'},0);break;case "toright":d(k).animate({'left':'+='+n+'px'},{duration:o,easing:p}).animate({'opacity':'hide','left':'-='+n+'px'},0);break;case "totop":d(k).animate({'top':'-='+n+'px'},{duration:o,easing:p}).animate({'opacity':'hide','top':'+='+n+'px'},0);break;case "tobottom":d(k).animate({'top':'+='+n+'px'},{duration:o,easing:p}).animate({'opacity':'hide','top':'-='+n+'px'},0);break;default:d(k).fadeOut(o);}};var slideshowArray={main:new h(defaultSettings)};if(defaultSettings.slaves.length){for(i=0;i<defaultSettings.slaves.length;i++){slideshowArray["slave"+i]=new h(defaultSettings.slaves[i]);}}if(c(defaultSettings.nav)||c(defaultSettings.left)){d(defaultSettings.nav).click(function(){if(g.animating==false&&g.numAnimating==0){g.navSelected=true;g.relativeIndex=d(g.slidesTemplate[d(this).index()]).getIndexOf(slideshowArray["main"].slides);for(var i in slideshowArray){slideshowArray[i].displaySlide(g.relativeIndex,d(this).index());}}});}if(c(defaultSettings.left)&&c(defaultSettings.right)){defaultSettings.right.add(defaultSettings.left).click(function(){if(g.animating==false&&g.numAnimating==0){g.navSelected=true;if(d(this).equalTo(defaultSettings.left)){g.activeIndex>0?g.activeIndex--:g.activeIndex=g.numSlides-1;}else{g.activeIndex<g.numSlides-1?g.activeIndex++:g.activeIndex=0;}g.relativeIndex=d(g.slidesTemplate[g.activeIndex]).getIndexOf(slideshowArray["main"].slides);for(var i in slideshowArray){slideshowArray[i].displaySlide(g.relativeIndex,g.activeIndex);}}});}for(var i in slideshowArray){d(slideshowArray[i].slides).fakeFloat();slideshowArray[i].animate();}};d.fn.arrayShift=function(e,f,g){var h=d.makeArray(d(this));for(var i=0;i<arguments.length;i++){if(isNaN(arguments[i])){if(arguments[i]=="first"){arguments[i]=0;}else if(arguments[i]=="last"){arguments[i]=h.length-1;}}else{arguments[i]=parseInt(arguments[i],10);}}var k=h[e];if(e>f){for(i=e;i>f;i--){h[i]=h[i-1];}h[f]=k;}else if(e<f){for(i=e;i<f;i++){h[i]=h[i+1];}h[f]=k;}if(typeof g=='function'){g.call(this);}return d(h);};d.fn.atIndex=function(e){var f=d.makeArray(d(this));return f[e];};d.fn.getIndexOf=function(e){var f=false;var g=d(this);var i=0;d(e).each(function(){if(d(this).equalTo(d(g))){f=i;}i++;});return f;};d.fn.equalTo=function(e){isEqual=!d(this).not(d(e)).length;return isEqual;};d.fn.fakeFloat=function(e,f){var g={direction:"left",margin:0,offset:0,speed:0},h=d.extend(g,d.fn.fakeFloat.defaults,e);var i=0;var k=0;d(this).each(function(){k=d(this).width();if(h.direction=="left"){d(this).animate({"left":((h.margin)+k)*i+(h.offset)+'px'},h.speed);}else{d(this).animate({"right":((h.margin)+k)*i+(h.offset)+'px'},h.speed);}i++;});if(typeof f=='function'){setTimeout(function(){f.call(this);},h.speed);}return this;};d.fn.frontpush=function(e){var f=d(this).length;var g=d.makeArray(d(this));for(var i=0;i<f;i++){e.push("");}for(i=(e.length);i>f;i--){var j=i-1;e[j]=e[j-f];}for(i=0;i<f;i++){e[i]=g[i];}return d(e);};})(jQuery);
