/*
Supersized - Fullscreen Slideshow jQuery Plugin
By Sam Dunn (www.buildinternet.com // www.onemightyroar.com)
Version: supersized.2.0.js // Relase Date: 5/7/09
Website: www.buildinternet.com/project/supersized
Thanks to Aen for preloading, fade effect, & vertical centering
*/

(function($){

	//Resize image on ready or resize
	$.fn.supersized = function() {
		$.inAnimation = false;
		$.paused = false;
		$.idx = 2;
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		
		$(window).bind("load", function(){
			$('#loading').hide();
			$('#supersize').fadeIn('fast');
			$('#content').show();
			if ($('#slideshow .activeslide').length == 0) $('#supersize a:first').addClass('activeslide');
			if (options.slide_captions == 1) $('#slidecaption').html($('#supersize .activeslide').find('img').attr('title'));
			$.idl = slides.length;
			//Slideshow
			if (options.slideshow == 1){
				if (options.slide_counter == 1){ //Initiate slide counter if active
					$('#slidecounter .slidenumber').html(1);
	    			$('#slidecounter .totalslides').html($("#supersize > *").size());
	    		}
				slideshow_interval = setInterval("nextslide()", options.slide_interval);
			}
		});
				
		$(document).ready(function() {
			$('#supersize').resizenow();
			$.curslide = $('#supersize a:first');
		});
		
		$(window).bind("resize", function(){
    		$('#supersize').resizenow(); 
		});
		
		$('#supersize').hide();
		$('#content').hide();
	};
	
	//Adjust image size
	$.fn.resizenow = function() {
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
	  	return this.each(function() {
	  		
			//Define image ratio
			var ratio = options.startheight/options.startwidth;
			
			//Gather browser and current image size
			var imagewidth = $(this).width();
			var imageheight = $(this).height();
			var browserwidth = $(window).width();
			var browserheight = $(window).height();
			var offset;

			//Resize image to proper ratio
			if ((browserheight/browserwidth) > ratio){
			    $(this).height(browserheight);
			    $(this).width(browserheight / ratio);
			    $(this).children().height(browserheight);
			    $(this).children().width(browserheight / ratio);
			} else {
			    $(this).width(browserwidth);
			    $(this).height(browserwidth * ratio);
			    $(this).children().width(browserwidth);
			    $(this).children().height(browserwidth * ratio);
			}
			if (options.vertical_center == 1){
				$(this).children().css('left', (browserwidth - $(this).width())/2);
				$(this).children().css('top', (browserheight - $(this).height())/2);
			}
			return false;
		});
	};
	
	$.fn.supersized.defaults = { 
			startwidth: 4,  
			startheight: 3,
			vertical_center: 1,
			slideshow: 1,
			navigation:1,
			transition: 1, //0-None, 1-Fade, 2-slide top, 3-slide right, 4-slide bottom, 5-slide left
			pause_hover: 0,
			slide_counter: 1,
			slide_captions: 1,
			slide_interval: 5000
	};
	
})(jQuery);

//Slideshow Next Slide
function nextslide() {

	if($.inAnimation) return false;
	else $.inAnimation = true;
    var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
    $.curslide = $('#supersize .activeslide');
    $.curslide.removeClass('activeslide');
	
    if ( $.curslide.length == 0 ) $.curslide = $('#supersize a:last');
		
    var nextslide =  $.curslide.next().length ? $.curslide.next() : $('#supersize a:first');
		
	//Display slide counter
	if (options.slide_counter == 1){
		var slidecount = slides.length;
		$.curslide.next().length ? slidecount++ : slidecount = 1;
	    $('#slidecounter .slidenumber').html(slidecount);
	}
	
    nextslide.hide().addClass('activeslide');
    
	if (options.transition == 0){
		nextslide.show(); loadslide;
	}
	if (options.transition == 1){
		nextslide.fadeIn(750, loadslide);
	}
	if (options.transition == 2){
		nextslide.show("slide", { direction: "up" }, 'slow', loadslide);
	}
	if (options.transition == 3){
		nextslide.show("slide", { direction: "right" }, 'slow', loadslide);
	}
	if (options.transition == 4){
		nextslide.show("slide", { direction: "down" }, 'slow', loadslide);
	}
	if (options.transition == 5){
		nextslide.show("slide", { direction: "left" }, 'slow', loadslide);
	}
    	
    $('#supersize').resizenow();//Fix for resize mid-transition
    
}

function loadslide() {
	$.inAnimation = false;
	$.curslide.find('img').attr('src', slides[$.idx]);
	$.idx = $.idx + 1;
	if ($.idx >= slides.length) $.idx = 0;
}
	
