/*
Supersized - Full Screen Background/Slideshow jQuery Plugin
supersized.1.0.js
February 2009
By Sam Dunn
www.buildinternet.com / www.onemightyroar.com
*/
(function($j){

	//Resize image on ready or resize
	$j.fn.supersized = function() {
	
		var options = $j.extend($j.fn.supersized.defaults, $j.fn.supersized.options);
		
		if (options.slideshow == 1){
			setupslides();
			setInterval("theslideshow()", options.slideinterval);
		}
		
		$j().ready(function() {
			$j('#supersize').resizenow(); 
		});
		$j(window).bind("resize", function(){
    		$j('#supersize').resizenow(); 
		});
	};
	
	//Adjust image size
	$j.fn.resizenow = function() {
		
		var options = $j.extend($j.fn.supersized.defaults, $j.fn.supersized.options);
		
	  	return this.each(function() {
	  		
			//Define image ratio & minimum dimensions
			var minwidth = options.minsize*(options.startwidth);
			var minheight = options.minsize*(options.startheight);
			var ratio = options.startheight/options.startwidth;
			
			//Gather browser and current image size
			var imagewidth = $j(this).width();
			var imageheight = $j(this).height();
			var browserwidth = $j(window).width();
			var browserheight = $j(window).height();
			
			//Check for minimum dimensions
			if ((browserheight < minheight) && (browserwidth < minwidth)){
				$j(this).height(minheight);
				$j(this).width(minwidth);
			}
			else{	
				//When browser is taller	
				if (browserheight > browserwidth){
				    imageheight = browserheight;
				    $j(this).height(browserheight);
				    imagewidth = browserheight/ratio;
				    $j(this).width(imagewidth);
				    
				    if (browserwidth > imagewidth){
				    	imagewidth = browserwidth;
				    	$j(this).width(browserwidth);
				    	imageheight = browserwidth * ratio;
				    	$j(this).height(imageheight);
				    }
				
				}
				
				//When browser is wider
				if (browserwidth >= browserheight){
				    imagewidth = browserwidth;
				    $j(this).width(browserwidth);
				    imageheight = browserwidth * ratio;
				    $j(this).height(imageheight);
				    
				    if (browserheight > imageheight){
				    	imageheight = browserheight;
				    	$j(this).height(browserheight);
				    	imagewidth = browserheight/ratio;
				    	$j(this).width(imagewidth);
				    }
				}
			}
			return false;
		});
	};
	
	$j.fn.supersized.defaults = { 
			startwidth: 1024,  
			startheight: 768,
			minsize: .5,
			slideshow: 0,
			slideinterval: 10000  
	};
	
})(jQuery);

//Slideshow Add-on
function setupslides() {

var currentslide = $j('#supersize .activeslide');
if ( currentslide.length == 0 ) currentslide = $j('#supersize :last');

while(currentslide.next().length != 0) {
currentslide = currentslide.next();
currentslide.css({opacity: 0.5});
}

}

function theslideshow() {

var currentslide = $j('#supersize .activeslide');

if ( currentslide.length == 0 ) currentslide = $j('#supersize :last');

var nextslide = currentslide.next().length ? currentslide.next() : $j('#supersize :first');

currentslide.animate({opacity: 0.80}, 600, function() {
nextslide.addClass('activeslide');
currentslide.removeClass('activeslide');
nextslide.animate({opacity: 1}, 600);
});

}