/**************************************************
	BACKGROUND
**************************************************/

function background_resize() {
	
	var image = '#background img';
	var ratio = ($(image).height() / $(image).width()).toFixed(2);
	var browserwidth = $(window).width();
	var browserheight = $(window).height();
	var offset;
	
	var min_height = 0;
	var min_width = 0;
	var fit_landscape = 0;
	var fit_portrait = 0;
	var horizontal_center = 1;
	var vertical_center = 1;
	
	if ((browserheight > min_height) || (browserwidth > min_width)){
		if ((browserheight/browserwidth) > ratio){
			if (fit_landscape && ratio <= 1){
				$(image).width(browserwidth);
				$(image).height(browserwidth * ratio);
			}
			
			else{
				$(image).height(browserheight);
				$(image).width(browserheight / ratio);
			}
		}
		
		else {
			if (fit_portrait && ratio > 1){
				$(image).height(browserheight);
				$(image).width(browserheight / ratio);
			}
			
			else{
				$(image).width(browserwidth);
				$(image).height(browserwidth * ratio);
			}
		}
	}
	
	if (horizontal_center){
		$(image).css('left', (browserwidth - $(image).width()) / 2);
	}
	
	if (vertical_center){
		$(image).css('top', (browserheight - $(image).height()) / 2);
	}
	
	$(image).bind("contextmenu",function(){
		return false;
	});
	$(image).bind("mousedown",function(){
		return false;
	});
}

function deployFunctions() {

	
	/**************************************************
		SLIDER
	**************************************************/
	
	$(".sliderMask, .jScrollPaneContainer").height($(window).height()-80);
	$(".sliderMask, .jScrollPaneContainer").width($(window).width());
	$('.sliderMask').jScrollPane();
	$(".jScrollPaneContainer").css('top', 50);
	
	/**************************************************
		NAVIGATION - BLOG
	**************************************************/
	
	$(".nav.blog").height($(window).height());
	
	if ($('.nav.blog .navContent').height() < $(window).height()) {
		$('.nav.blog .navContent').css('top', ($(window).height() - $('.nav.blog .navContent').height()) / 2);
	}
	
	/**************************************************
		NAVIGATION - PORTFOLIO
	**************************************************/
	
	$(".nav.portfolio").height($(window).height());
	
	if ($('.nav.portfolio .navContent').height() < $(window).height()) {
		$('.nav.portfolio .navContent').css('top', ($(window).height() - $('.nav.portfolio .navContent').height()) / 2);
	}
	
	/**************************************************
		NAVIGATION - GALLERY
	**************************************************/
	
	$(".nav.gallery").width($(window).width());
	$('.nav.gallery').css('top', ($(window).height() - $('.nav.gallery .ngg-galleryoverview').height()) / 2);
	
	if ($('.nav.gallery .navContent').width() < $(window).width()) {
		$('.nav.gallery .navContent').css('left', ($(window).width() - $('.nav.gallery .navContent').width()) / 2);
	}
	
	
}

$(document).ready(function() {

	deployFunctions();
	
	/**************************************************
		SLIDER
	**************************************************/
	
	$('.sliderMask .sliderContent img').load(function() {
		$(".sliderMask, .jScrollPaneContainer").height($(window).height()-80);
		$('.sliderMask').jScrollPane();
	});

	
	/**************************************************
		NAVIGATION - BLOG
	**************************************************/
	
	$('.nav.blog .navContent li a').hover(function(){
		$(this).animate({paddingRight: '20px'}, {queue:false, duration: 100});
	},
	function(){
		$(this).animate({paddingRight: '10px'}, {queue:false, duration: 100});
	});
	
	$('.nav.blog .navMask ul.navContent').mousemove(function(e) {
		var _top = parseInt($('.nav.blog').offset().top);
		var _contentH = parseInt($('.nav.blog .navMask').height()) + 5;
		var _H = $('.nav.blog').height() - 20;
		var _scH = _contentH - _H;
		var _ypos = e.pageY - _top;
		
		if(_scH > 0) {
			var _contentY = -(_scH / _H)*_ypos + 10;
			$('.nav.blog .navMask .navContent').animate({top: _contentY}, { queue:false, duration: 500 });
		}
	});
	
	/**************************************************
		NAVIGATION - PORTFOLIO
	**************************************************/
	
	$('.nav.portfolio .navMask ul.navContent li').hover(function(){
		$(this).animate({right: '0px'}, {queue:false, duration: 100});
	},
	function(){
		$(this).animate({right: '-10px'}, {queue:false, duration: 100});
	});
	
	$('.nav.portfolio .navMask ul.navContent li p.image img').hover(function(){
		$(this).animate({opacity: '1'}, {queue:false, duration: 100});
	},
	function(){
		$(this).animate({opacity: '0.5'}, {queue:false, duration: 100});
	});
	
	$('.nav.portfolio .navMask ul.navContent').mousemove(function(e) {
		var _top = parseInt($('.nav.portfolio').offset().top);
		var _contentH = parseInt($('.nav.portfolio .navMask').height()) + 50;
		var _H = $('.nav.portfolio').height() - 20;
		var _scH = _contentH - _H;
		var _ypos = e.pageY - _top;
		
		if(_scH > 0) {
			var _contentY = -(_scH / _H)*_ypos + 10;
			$('.nav.portfolio .navMask .navContent').animate({top: _contentY}, { queue:false, duration: 500 });
		}
	});
	
	/**************************************************
		NAVIGATION - GALLERY
	**************************************************/
	
	$('.nav.gallery .navMask ul.navContent').mousemove(function(e) {
		var _left = parseInt($('.nav.gallery').offset().left);
		var _contentW = parseInt($('.nav.gallery .ngg-galleryoverview').width()) + 5;
		var _W = $('.nav.gallery').width();
		var _scW = _contentW - _W;
		var _xpos = e.pageX - _left;
		
		if(_scW > 0) {
			var _contentX = -(_scW / _W)*_xpos + 10;
			$('.nav.gallery .navMask .navContent').animate({left: _contentX}, { queue:false, duration: 0 }); //set slide ease 0 = noEase, 500 = optimal
		}
	});
	
	
	
});

window.onresize = function() {

	deployFunctions();
	background_resize();
	
}
/**************************************************
	BACKGROUND
**************************************************/

function background() {

	$(window).load(function() {
		$('#background img').fadeIn();
		background_resize();
	});
}


/**************************************************
	DOCUMENT READY
**************************************************/

$(document).ready(function() {
	
	background();
});
