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

	//Resize image on ready or resize
	$.fn.supersized = function() {
	
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		
		if (options.slideshow == 1){
			setInterval("theslideshow()", options.slideinterval);
		}
		
		$().ready(function() {
			$('#supersize').resizenow(); 
		});
		$(window).bind("resize", function(){
    		$('#supersize').resizenow(); 
		});
	};
	
	//Adjust image size
	$.fn.resizenow = function() {
		
		var options = $.extend($.fn.supersized.defaults, $.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 = $(this).width();
			var imageheight = $(this).height();
			var browserwidth = $(window).width();
			var browserheight = $(window).height();
			
			//Check for minimum dimensions
			if ((browserheight < minheight) && (browserwidth < minwidth)){
				$(this).height(minheight);
				$(this).width(minwidth);
			}
			else{	
				//When browser is taller	
				if (browserheight > browserwidth){
				    imageheight = browserheight;
				    $(this).height(browserheight);
				    imagewidth = browserheight/ratio;
				    $(this).width(imagewidth);
				    
				    if (browserwidth > imagewidth){
				    	imagewidth = browserwidth;
				    	$(this).width(browserwidth);
				    	imageheight = browserwidth * ratio;
				    	$(this).height(imageheight);
				    }
				
				}
				
				//When browser is wider
				if (browserwidth >= browserheight){
				    imagewidth = browserwidth;
				    $(this).width(browserwidth);
				    imageheight = browserwidth * ratio;
				    $(this).height(imageheight);
				    
				    if (browserheight > imageheight){
				    	imageheight = browserheight;
				    	$(this).height(browserheight);
				    	imagewidth = browserheight/ratio;
				    	$(this).width(imagewidth);
				    }
				}
			}
			return false;
		});
	};
	
	$.fn.supersized.defaults = { 
			startwidth: 640,  
			startheight: 480,
			minsize: .5,
			slideshow: 1,
			slideinterval: 5000  
	};
	
})(jQuery);

 
function theslideshow() {

   
  
}

jQuery.fn.makeSlideShow = function(opts) { 

	opts = jQuery.extend({
		speed		:400,
		delay		:8000,
		slideCLass	:'.slide',
		pager		:'#pager',
		next		:'.nextSlide',
		previous	:'.previousSlide',
		startSlide	:0,
		screenClick	:false,
		callback:function(){return false;}
	},opts||{});
 		
 		var currentSlide = opts.startSlide
 		var $slides = $(this).children(opts.slideCLass);
 		
 		$slides.hide()
 		$slides.eq(currentSlide).show()
 		
		var totalSlides = $(this).children(opts.slideCLass).size();
		var pagerDisplay;
		
		updatePager()
		updateSlideSHow()
		
		
		var timerID = 0;
		function setTimer(){
			clearInterval(window.timerID);	
			window.timerID = setInterval (function () {
			    nextSlide();
			}, opts.delay);
		}
		
		$(opts.next).click(function(){
		 	nextSlide();
		 	return false;
		});
		
		$(opts.previous).click(function(){
		 	previousSlide();
		 	return false;
		});
		
		$slides.click(function(){
		 	nextSlide();
		});
		
		function nextSlide() {
			$slides.eq(currentSlide).fadeOut(opts.speed)
			currentSlide++;
			(currentSlide==totalSlides ? currentSlide=0 : false);
		
			updateSlideSHow()
		}
		
		function previousSlide() {
			$slides.eq(currentSlide).fadeOut(opts.speed)
			currentSlide--;
			(currentSlide<0 ? currentSlide=(totalSlides-1) : false);
		
			updateSlideSHow()
		}
		
		function updateSlideSHow() {
			$slides.eq(currentSlide).fadeIn(opts.speed)
/* 			$('div.title').html($("div."+$slides.eq(currentSlide).attr('id')).html()); */
			$('div.title').html(captions[currentSlide]);
			updatePager();
			setTimer();
		}
		
		function updatePager() {
			pagerDisplay = "Image "+(currentSlide+1)+" of "+totalSlides;
			$(opts.pager).html(pagerDisplay);
		}
		
		if(opts.screenClick) screenClick();
		
		function screenClick(){
		
			$(window).bind('click',function(e){
				var ww = $(window).width();
		 
				if(!$(this).attr('href')) $()(e.pageX < (ww/2) ? previousSlide() : nextSlide());
	          	//alert(e.pageX+"<"+ww);
	           
 			});

 
			
		}
		
		$(document).keydown(function (e) {
		      var keyCode = e.keyCode || e.which,
		          arrow = {left: 37, up: 38, right: 39, down: 40 }, $status = $('#status');
		
		      switch (keyCode) {
			        case arrow.left:
			           previousSlide()
			        break;
			        case arrow.up:
			           
			        break;
			        case arrow.right:
			          nextSlide()
			        break;
			        case arrow.down:
			           
			        break;
		      }
	    });
		
	 		
	 
};


