(function($){
	
	$.fn.supersized = function() {
		$(".item").eq(0).find(".item_roll_bkg").show();
		$(".item").eq(0).find(".item_roll").show();
		$.inAnimation = false;
		thumbItems = [];
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		$.currentSlide = options.start_slide - 1;
		
		for(i=0;i<options.slides.length;i++){
			if(i == 0){
				$("<img/>").attr("src", options.slides[i].image).addClass('activeslide').appendTo("#supersized");
			}else if(i == options.slides.length-1){
				$("<img/>").attr("src", options.slides[i].image).addClass('prevslide').appendTo("#supersized");
			}else{
				$("<img/>").attr("src", options.slides[i].image).appendTo("#supersized");
			}
		}

		
		$(window).bind("load", function(){
			$('#loading').hide();
			$('#supersized').resizenow();
			$('#supersized').fadeIn('fast');
			slideshow_interval = setInterval(nextslide, options.slide_interval);
		});
				
		$(document).ready(function() {
			$('#supersized').resizenow(); 
			$('.MenuTop li').each(function(index) {
				$(this).hover(function(){
					//alert("z");
					$('.MenuTop li a img').css("border-left","1px solid #4C4C47").css("border-right","1px solid #4C4C47").css("border-top","1px solid #4C4C47");
					$('.submenuitem').css("display","none");
					$('.submenuitem').eq(index).css("display","block");
					$(this).find("img").css("border-left","1px solid #FFFFFF").css("border-right","1px solid #FFFFFF").css("border-top","1px solid #FFFFFF");
					$('#submenu').fadeIn();
					deployed = true;
				});
			});
			
			$("body").mousemove(function(event) {
				if(event.pageY < 30 || event.pageY > 120 ){
					$('#submenu').fadeOut();
					$('.MenuTop li a img').css("border-left","1px solid #4C4C47").css("border-right","1px solid #4C4C47").css("border-top","1px solid #4C4C47");
				}
			});
			
			$(".item").each(function(index) {
				$(this).click(function(){
					window.location.href = $(this).find(".item_zone a").attr("href");
				});
				
				$(this).mouseenter(function(){	
					if($(this).find('.item_roll').is(':hidden')){
						clearInterval(slideshow_interval);
						goSlide(index-1);
						
					}
				
				}).mouseleave(function(){
					slideshow_interval = setInterval(nextslide, options.slide_interval);
				});
				
				
				
				
				
				
			});

		});
		
		
		$(window).bind("resize", function(){
    		$('#supersized').resizenow(); 
		});
		
		$('#supersized').hide();
	};
	

	$.fn.resizenow = function() {
		var t = $(this);
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
	  	return t.each(function() {
	  		
			
			var ratio = options.startheight/options.startwidth;
			
			var imagewidth = t.width();
			var imageheight = t.height();
			var browserwidth = $(window).width();
			var browserheight = $(window).height();
			var offset;

			//Resize image to proper ratio
			if ((browserheight/browserwidth) > ratio){
			    t.height(browserheight);
			    t.width(browserheight / ratio);
			    t.children().height(browserheight);
			    t.children().width(browserheight / ratio);
			} else {
			    t.width(browserwidth);
			    t.height(browserwidth * ratio);
			    t.children().width(browserwidth);
			    t.children().height(browserwidth * ratio);
			}
			if (options.vertical_center == 1){
				t.children().css('left', (browserwidth - t.width())/2);
				t.children().css('top', (browserheight - t.height())/2);
			}
			return false;
		});
	};
	
	function goSlide(num) {
	    var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		var currentslide = $('#supersized .activeslide');
	    currentslide.removeClass('activeslide');
		if ( currentslide.length == 0 ) currentslide = $('#supersized img:last'); 
			
	    var nextslide =  currentslide.next().length ? currentslide.next() : $('#supersized img:first'); 
	    var prevslide =  nextslide.prev().length ? nextslide.prev() : $('#supersized img:last'); 
		
		$('.prevslide').removeClass('prevslide');
		prevslide.addClass('prevslide');
		
		num + 1 == options.slides.length ? num = 0 : num++;
		loadSlide=false;
		num == options.slides.length - 1 ? loadSlide = 0 : loadSlide = num + 1;
		$.currentSlide = num;
		
		slideToGO = $('#supersized img').eq($.currentSlide);
		slideToGO.hide().addClass('activeslide');
	    	
		
		$(".item_roll_bkg").hide();
		$(".item_roll").hide();
		$(".item_desc").css("display","block");
		
		
	    	
	    slideToGO.fadeIn(700, function(){$.inAnimation = false;});
		
		$(".item").eq($.currentSlide).find(".item_roll_bkg").css('display','block');
		$(".item").eq($.currentSlide).find(".item_roll").fadeIn('fast');
		$(".item").eq($.currentSlide).find(".item_desc").hide('fast');
		
		
		
	    $('#supersized').resizenow();

	
	}
	
		
	function nextslide() {
		
	
		//if($.inAnimation) return false;
		//else $.inAnimation = true;
	    var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		
		var currentslide = $('#supersized .activeslide');
	    currentslide.removeClass('activeslide');
		
	    if ( currentslide.length == 0 ) currentslide = $('#supersized img:last'); //*******Check if end of array?
			
	    var nextslide =  currentslide.next().length ? currentslide.next() : $('#supersized img:first'); //*******Array
	    var prevslide =  nextslide.prev().length ? nextslide.prev() : $('#supersized img:last'); //*******Array
		
		$('.prevslide').removeClass('prevslide');
		prevslide.addClass('prevslide');
		
		
		
		$.currentSlide + 1 == options.slides.length ? $.currentSlide = 0 : $.currentSlide++;
		loadSlide = false;
		$.currentSlide == options.slides.length - 1 ? loadSlide = 0 : loadSlide = $.currentSlide + 1;
		
	
		
		
	    nextslide.hide().addClass('activeslide');
	    	
		$(".item_roll_bkg").hide();
		$(".item_roll").hide();
		$(".item_desc").css("display","block");
	    	
	    nextslide.fadeIn(700, function(){$.inAnimation = false;});
	    

		$(".item").eq($.currentSlide).find(".item_roll_bkg").css('display','block');
		$(".item").eq($.currentSlide).find(".item_roll").fadeIn('fast');
		$(".item").eq($.currentSlide).find(".item_desc").hide('fast');
		
	    $('#supersized').resizenow();
		
	}
	

	$.fn.supersized.defaults = { 
			startwidth: 4,  
			startheight: 3,
			vertical_center: 1,
			slide_interval: 5000,
			start_slide: 1
	};
	
})(jQuery);
