var selector = "#menubuttons UL LI a"; // CSS Selector/s for element/s you want to apply fade effect to.
var hoverOverSpeed = "500"; // Hover over fade speed (in milliseconds)
var hoverOutSpeed = "300"; // Hover out fade speed (in milliseconds)
var MinHeight = 900;

$(document).ready(function() {
	// set footer min-top (min-height for window)
	$(window).resize(function() {
		if ($(window).height()<MinHeight) {
			$('#footerparentdiv').css('top',(MinHeight-$('#footerparentdiv').height())+'px');
		} else if ($(window).height()>=MinHeight) {
			$('#footerparentdiv').css('top','');
		}
	});
	$(window).resize();
});

$(window).load(function() {  
(function($){
	jQuery.fn.backOpacity = function(settings){
		// Default and argument settings
		settings = jQuery.extend(settings);

		// Loop through each element given and add an opacity element
		jQuery(this).each(function(intIndex){
			// For fixing background element's positions/sizes these variables are needed
			var pt = parseInt($(this).css('paddingTop'));
			var pb = parseInt($(this).css('paddingBottom'));
			var pl = parseInt($(this).css('paddingLeft'));
			var pr = parseInt($(this).css('paddingRight'));
			var fixedleft = parseInt($(this).css('marginLeft'));
			var fixedright = parseInt($(this).css('marginRight'));

			// Element offset width
			var parentow = $(this).width();

			// Fixed variables
			var fixedwidth, fixedheight, fixedleft, fixedright = 0;

			// Calculate fixing positions/sizes
			fixedwidth = parentow + pl + pr;
			fixedheight = $(this).height() + pt + pb;

			// Add background element
			//$(document.createElement('div')).width(fixedwidth).height(fixedheight).css({position:'relative', marginLeft:fixedleft+'px', marginRight:fixedright+'px', left:0, top:0, bottom:0, zIndex:((10)+intIndex*10)}).insertAfter($(this));

			// Set positions for the content element
			$(this).css({position:'relative', zIndex:((20)+intIndex*20)});
		});

		// Return
		return jQuery;
	};
})(jQuery);

// Animate Fade Effects
	$(selector).backOpacity({opacity: '1'}); // Initiate default background opacity
	
	$(selector).hover(
		
		function() {
			$(this).siblings('div').stop().animate({'opacity':1},hoverOverSpeed); //fade out on hover
		},
		
		function() {
			$(this).siblings('div').stop().animate({'opacity':0}, hoverOutSpeed); //fade in on mouseout
	
		});
	
	if ($('#menu').attr('style')) { // Old IE
		$('#menu').animate({
			'padding-top': 43,
			opacity:1
		}, {
			duration:3000,
			easing:'easeOutExpo'
		});
		$('#footer').animate({
			opacity:1
		}, {
			duration:3000,
			easing:'easeOutExpo'
		});;
	}
});


defaultindex = 10;

function ShowBlogPost(ID, hide)
{
	if (hide==null) {
		i = 0;
		while (document.getElementById('blogbutton'+(++i))) {
			if ($('#blogbutton'+i+'a').css('display') == 'none') {
				$('#blogbutton'+i+'a').fadeIn(400);
				$('#post_'+i).fadeOut(400,function() {
					ShowBlogPost(ID,'yes');
					$('#blogbutton'+i).css('zIndex', defaultindex);
				});
				i = 100; // exit while
			}
		}
	} else {
		$('#blogbutton'+ID).css('zIndex', defaultindex+1);
		$('#post_'+ID).fadeIn(400);
		$('#blogbutton'+ID+'a').fadeOut(400);
	}
}


dest = 0;
project = 1;
projectsCount = 5;
imagesWidth = 262;
ChangeDuration = 900; //miliseconds
fadingAnimate = 'nothing';


function slideLeft() {
	if (DIR=='ltr' && dest>0) {
		dest -= imagesWidth;
		project--;
		if (project==1) {
			$('#cursorleft').fadeTo(ChangeDuration, 0);
			$('#cursorleft').css('cursor','default');
		} else if (project==projectsCount-1) {
			$('#cursorright').fadeTo(ChangeDuration, 1);
			$('#cursorright').css('cursor','pointer');
		}
		changeInfo(project);
		slide();
	} else if (DIR=='rtl' && dest<(projectsCount-1)*imagesWidth) {
		dest += imagesWidth;
		project++;
		if (project==2) {
			$('#cursorright').fadeTo(ChangeDuration, 1);
			$('#cursorright').css('cursor','pointer');
		} else if (project==projectsCount) {
			$('#cursorleft').fadeTo(ChangeDuration, 0);
			$('#cursorleft').css('cursor','default');
		}
		changeInfo(project);
		slide();
	}
	
}

function slideRight() {
	if (DIR=='ltr' && dest<(projectsCount-1)*imagesWidth) {
		dest += imagesWidth;
		project++;
		if (project==projectsCount) {
			$('#cursorright').fadeTo(ChangeDuration, 0);
			$('#cursorright').css('cursor','default');
		} else if (project==2) {
			$('#cursorleft').fadeTo(ChangeDuration, 1);
			$('#cursorleft').css('cursor','pointer');
		}
		changeInfo(project);
		slide();
	} else if (DIR=='rtl' && dest>0) {
		dest -= imagesWidth;
		project--;
		if (project==1) {
			$('#cursorright').fadeTo(ChangeDuration, 0);
			$('#cursorright').css('cursor','default');
		} else if (project==projectsCount-1) {
			$('#cursorleft').fadeTo(ChangeDuration, 1);
			$('#cursorleft').css('cursor','pointer');
		}
		changeInfo(project);
		slide();
	}
}

function slide() {
	if (DIR=='ltr') $('#projectscreenshots').animate({
		'margin-left': '-'+dest
	}, {
		duration:ChangeDuration,
		queue:false,
		easing:'easeOutExpo'
	});
	else if (DIR=='rtl') $('#projectscreenshots').animate({
		'margin-right': '-'+dest
	}, {
		duration:ChangeDuration,
		queue:false,
		easing:'easeOutExpo'
	});
}

function changeInfo(projectNumber) {
	$(fadingAnimate).stop();
	$('#projectspage').html(projectNumber+'/'+projectsCount);
	i = 0;
	while (document.getElementById('projectinfo'+(++i))) {
		if ($('#projectinfo'+i).css('display') != 'none') {
			fadingAnimate = '#projectinfo'+i;
			$('#projectinfo'+i).fadeOut((ChangeDuration / 2), function(){fadingAnimate = '#projectinfo'+projectNumber;$(fadingAnimate).fadeTo((ChangeDuration / 2),1,function(){fadingAnimate = 'nothing';});});
			i = 100; // exit while
		}
	}
}
