/*
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
*/
var slides = 0;
var picspace = 0;

(function($){	
	//Resize image on ready or resize
	$.fn.supersized = function() {
		$.inAnimation = false;
		$.paused = false;
		var options = $.extend($.fn.supersized.defaults, $.fn.supersized.options);
		slides = options.slides;
		picspace = options.picspace;
		
		$(document).ready(function() {
			//Infobox Hover Behaviour
			$(".infobox_wrapper").hover(
				function() {
                   	$(this).animate({ "bottom" : "-20px"} ,{ queue : false , duration : 800 });
				  	$(this).find(".infobox_ueber").css("background-image", "url(ximg/frame/infobox_ueber_h.png)");
				} ,
				function() {
                  	$(this).animate({ "bottom" : "-150px"}  ,{ queue : false , duration : 800 });
					$(this).find(".infobox_ueber").css("background-image", "url(ximg/frame/infobox_ueber.png)");	
				}
			);
		});
		
		$(window).bind("resize", function(){
    		$('#supersize').resizenow(); 
		});
		
		$('#supersize').hide();
		$('#content').hide();
		
			$('#loading').hide();
			$('#supersize').fadeIn('fast');
			$('#content').show();

			$.projectup=getUrlVars()["up"];
			if($.projectup == "undefined" || $.projectup==null || $.projectup=="null"){ 
				$.projectup=1 ;
			}
			
			$.projectup=parseInt($.projectup);
			
			checknext();
			
			$('#supersize').resizenow();
			
			update_infobox();
			
			
			//Slideshow
			$('#navigation a').click(function(){  
					$(this).blur();  
					return false;  
				}); 	
			//Slide Navigation
			if($('#supersize a').length > slides){
			    $('#nextslide').click(function() {
			    	if($.paused) return false; if($.inAnimation) return false;
				    nextslide();		    
				    return false;
			    });
			    $('#prevslide').click(function() {
			    	if($.paused) return false; if($.inAnimation) return false;
			        prevslide();
			        return false;
			    });
			}else{
				$('#nextslide').hide();
				$('#prevslide').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;
			var ratio = options.startratio;
			
			//Gather browser and current image size
			var imagewidth = $(this).width();
			var imageheight = $(this).height();
			var browserwidth = $(window).width();
			var browserpicwidth = browserwidth-(slides-1)*picspace;
			$.browserwidth=browserwidth;
			$.browserpicwidth=browserpicwidth;
			var childrenwidth=browserpicwidth/slides;
			var browserheight = $(window).height()-$('#header_wrapper').height()-$('#footer_wrapper').height();
			var offset;
			
			//Resize image to proper ratio
			if ( (browserpicwidth / (slides*browserheight)) < ratio ){
			    $(this).height(browserheight);
			    $(this).width(browserheight / ratio);
			    $(this).children().height(browserheight);
			    $(this).children().width(Math.ceil(browserpicwidth / slides));
				$(this).children().children('img').width(Math.ceil(browserheight*ratio));
			} else {
				$(this).width(browserpicwidth / slides);
			    $(this).height(browserpicwidth / (slides * ratio) );
			    $(this).children().height(browserpicwidth / (slides * ratio));
			    $(this).children().width(Math.ceil(browserpicwidth / slides ));
				$(this).children().children('img').width(Math.ceil(browserpicwidth / slides));
			}
			if (options.vertical_center == 1){
				$(this).children().css('left', (browserwidth - $(this).width())/2);
				$(this).children().css('top', (browserheight - $(this).height())/2 + $('#header_wrapper').height());	
			} else {
				$(this).children().css('left', (browserwidth - $(this).width())/2);
				$(this).children().css('top', (browserheight - $(this).height())/4 + $('#header_wrapper').height());	
			}
			$(this).children().each(function(index){
				thisleft = (parseInt($(this).attr("alt"))-1)*(browserpicwidth/slides + picspace);
				$(this).css("left",thisleft);
				var outofframe=($(this).width()-$(this).children('img:').width())*ratio+"px";
				$(this).children('img').css("left",outofframe);
				
			});
			$('#content').css("top",(browserheight/2) + 67);
			
			//Resize Infoboxes
			$('#infoboxes .infobox_wrapper').each(function(index){
				$(this).css("width",(Math.ceil(browserpicwidth/slides) - 32));
				thisleft = index*(browserpicwidth/slides+picspace);
				$(this).css("left",thisleft);
			});
				
			return false;
		});
	};
	
})(jQuery);



//Changing Infobox on Project Change
function update_infobox(){
	$('#infoboxes .infobox_wrapper:nth-child(1) .infobox_ueber').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=1]'))+1)+") .infobox_ueberschrift").html());
	$('#infoboxes .infobox_wrapper:nth-child(1) .infobox_te').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=1]'))+1)+") .infobox_text").html());
	
	$('#infoboxes .infobox_wrapper:nth-child(2) .infobox_ueber').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=2]'))+1)+") .infobox_ueberschrift").html());
	$('#infoboxes .infobox_wrapper:nth-child(2) .infobox_te').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=2]'))+1)+") .infobox_text").html());
	
	$('#infoboxes .infobox_wrapper:nth-child(3) .infobox_ueber').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=3]'))+1)+") .infobox_ueberschrift").html());
	$('#infoboxes .infobox_wrapper:nth-child(3) .infobox_te').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=3]'))+1)+") .infobox_text").html());

	$('#infoboxes .infobox_wrapper:nth-child(4) .infobox_ueber').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=4]'))+1)+") .infobox_ueberschrift").html());
	$('#infoboxes .infobox_wrapper:nth-child(4) .infobox_te').html($("div.infobox_object:nth-child("+($('#supersize a').index($('.supersize_wrapper[alt=4]'))+1)+") .infobox_text").html());
}

//Organize the order
function checknext(){
	$('#supersize a').attr('alt',slides+1);
	if($.projectup < 1) $.projectup= $('#supersize a').length;
	if($.projectup > $('#supersize a').length) $.projectup=1;
	
	($.projectup > 0) ? $('#supersize a:nth-child('+$.projectup+')').addClass('activeslide').attr("alt","1") : $('#supersize a:first').addClass('activeslide').attr("alt","1");
	//for( thisSlide = 2; thisSlide <= $('#supersize a').length; thisSlide++ ) {
	for( thisSlide = 2; thisSlide <= slides; thisSlide++ ) {
		thisSlideAdd = thisSlide - 1;
		($.projectup+thisSlideAdd) <= $('#supersize a').length ? $('#supersize a:nth-child('+($.projectup+thisSlideAdd)+')').addClass('activeslide').attr("alt",thisSlide) : $('#supersize a:nth-child('+(($.projectup+thisSlideAdd)-$('#supersize a').length)+')').addClass('activeslide').attr("alt",thisSlide);
	}
}
	

//Slideshow Next Slide
function nextslide() {
	if($.inAnimation) return false;
	else $.inAnimation = true;

	$('#supersize a.activeslide').removeClass("activeslide");
	$('#supersize a.prevslide').removeClass("prevslide");
	$('#supersize a[alt=1]').addClass("prevslide");
	$('#supersize a').attr("alt","");
	$.projectup++;
	checknext();
	$('#supersize a.prevslide').addClass("activeslide").attr("alt","0");
	$('#supersize a[alt='+slides+']').css("left",$.browserwidth+picspace);
	$('#supersize a[alt='+(slides+1)+']').css("left",$.browserwidth+picspace);
	$('#supersize a.activeslide').each(function(){
		speed=700-(parseInt($(this).attr("alt"))*10);
		thisleft = (parseInt($(this).attr("alt"))-1)*($.browserpicwidth/slides + picspace);
		$(this).animate({"left" : thisleft}, speed, function(){$.inAnimation=false;});
	});
		
	update_infobox();  
}


//Slideshow Previous Slide
function prevslide() {
	if($.inAnimation) return false;
	else $.inAnimation = true;

	$('#supersize a.activeslide').removeClass("activeslide");
	$('#supersize a.prevslide').removeClass("prevslide");
	$('#supersize a[alt='+slides+']').addClass("prevslide");
	$('#supersize a').attr("alt","");
	$.projectup--;
	checknext();
	$('#supersize a.prevslide').addClass("activeslide").attr("alt",(slides+1));
	$('#supersize a[alt=1]').css("left",0-($.browserwidth/slides)-picspace);
	$('#supersize a.activeslide').each(function(){
		speed=700+(parseInt($(this).attr("alt"))*10);
		thisleft = (parseInt($(this).attr("alt"))-1)*($.browserpicwidth/slides + picspace);
		$(this).animate({"left" : thisleft}, speed, function(){$.inAnimation=false;});
	});
		
	update_infobox();  
}

