/* BEGIN: featured content slideshow */

(function() {

	$.fn.featuredSlideshow = function(options) {
		var opts = $.extend({}, $.fn.featuredSlideshow.defaults, options);
		return this.each(function() {
			var $this = $(this);
			var o = $.meta ? $.extend({}, opts, $this.data()) : opts;
			
			var hoverInterval = autoAdvance($this);
			 
			$this.hover(function() {
				clearInterval(hoverInterval);
			}, function() {
				hoverInterval = autoAdvance($this);
			});
			
			$('ul.pagination li', $this).not('.prev, .next').click(function() {
				$.fn.featuredSlideshow.advance($('ul.slides li:eq('+($(this).prevAll().size() - 1)+')'));
				return false;
			});
			$('ul.pagination li.prev', $this).click(function() {
				var prev = $('ul.slides li.active', $this).prev().size() == 0 ? $('ul.slides li:last', $this) : $('ul.slides li.active', $this).prev();
				$.fn.featuredSlideshow.advance(prev);
				return false;
			});
			$('ul.pagination li.next', $this).click(function() {
				var next = $('ul.slides li.active', $this).next().size() == 0 ? $('ul.slides li:first', $this) : $('ul.slides li.active', $this).next();
				$.fn.featuredSlideshow.advance(next);
				return false;
			});
						
			//functionality
			
		});
	};

	// private
	function autoAdvance($this) {
		return setInterval(function() {
			$.fn.featuredSlideshow.advance($('ul.slides li.active', $this).next().size() == 0 ? $('ul.slides li:first', $this) : $('ul.slides li.active', $this).next());
		}, 5500);
	};

	//public
	$.fn.featuredSlideshow.advance = function($slide) {
		var paginationIndex = $slide.prevAll().size() + 1;
		$slide.stop().parent().parent().find('.pagination li:eq('+paginationIndex+')').addClass('active').siblings().removeClass('active');
		$slide.animate({ opacity: 0 }, 1, function() {
			$(this).addClass('on_deck');
		});
		$slide.animate({ opacity: 1}, 250, function() {
			$(this).siblings('.active').removeClass('active');
			$(this).addClass('active').removeClass('on_deck');
		});
	};

	$.fn.featuredSlideshow.defaults = {
		
	};

})(jQuery);


/* END: featured content slideshow */
