(function() {
	function makePos(val) {
		if(val < 0) {
			return 0 - val;
		}
		
		return val;
	}

	jQuery(function() {
					
	
		var page = 8;
		var left = 0;
		var webkit = false;
		
		if(typeof(jQuery('body').get(0).style.WebkitTransform) != 'undefined') {
			webkit = true;
		}
		
		jQuery("#navigation ul li").click(function(evt) {
												   
			
			evt.preventDefault();
			
			var jContent = jQuery('#content');
			
			jContent.css({x:0});
			
			var jThis = jQuery(this);
			
			jThis.siblings().removeClass('active');
			jThis.addClass('active');
			
			var newPage = jThis.prevAll().size();

			if(newPage == page) {
				return;
			}
			
			if(newPage == 0) {
				jQuery('div.navArrows a.left_arrow').css({display:'none'});
				jQuery('div.navArrows a.right_arrow').css({display:'block'});
			} else if(newPage == 7) {
				jQuery('div.navArrows a.left_arrow').css({display:'block'});
				jQuery('div.navArrows a.right_arrow').css({display:'none'});
			} else {
				jQuery('div.navArrows a.left_arrow').css({display:'block'});
				jQuery('div.navArrows a.right_arrow').css({display:'block'});
			}
			
			target = jQuery(window).width()
			
			if(newPage < page) {
				target = -target;
			}
			
			var jPages = jContent.find('>div>div');
			
			var origLeft = left;
			var newLeft = 278 - (newPage * 140);
				
			if(newLeft > 0) {
				newLeft = 0;
			} else if(newLeft < -(3 * 141)) {
					newLeft = -(3 * 141);
			}
			
			left = newLeft;
			
			
			var jNavWrap = jQuery('#navWrapper');
			
			jContent.animate({x:1}, {step:function(x) {

				if(x < 0.5) {
					if(webkit) {
						jPages.eq(page).css({'-webkit-transform':'translate3d(' + (-target * x * 2) + 'px,0,0)'});
					} else {
						jPages.eq(page).css({left:-target * x * 2});
					}
				} else {
					if(newPage != page) {
						jPages.removeClass('active');
						jPages.eq(newPage).addClass('active');
						page = newPage;
					}
					
					if(webkit) {
						jPages.eq(page).css({'-webkit-transform':'translate3d(' + (target * (1 - x) * 2) + 'px,0,0)'});
					} else {
						jPages.eq(page).css({left:target * (1 - x) * 2 });
					}
				}
				
				var currLeft = origLeft + ((newLeft - origLeft) * x);
				
				if(webkit) {
					jNavWrap.css({'-webkit-transform':'translate3d(' + currLeft + 'px,0,0)'});
				} else {
					jNavWrap.css({left:currLeft + 2});
				}

			}, duration:1000, queue:false});
			stopVideo();
			
	
			

						
	});
		
		
		jQuery('body').keyup(function(evt) {

			switch(evt.which) {
				case 39:
					swipeLeft();
				break;
			
				case 37:
					swipeRight();
				break;

				case 27:
					// esc. pressed - hide all overlays
				break;
				
			}
		});
		
		function swipeLeft() {
			jQuery("#navigation ul li.active").next().children().click();
			stopVideo();

		}
		
		function swipeRight() {
			jQuery("#navigation ul li.active").prev().children().click();
			stopVideo();


		}
		
		if(typeof(jQuery("#content").swipe) != 'undefined') {
			jQuery("#content").swipe({
				swipeLeft:swipeLeft,
				swipeRight:swipeRight,
				threshold:75
			});
		}
		
		
		jQuery(window).resize(function() {
		
			var winW = jQuery(window).width();
			var winH = jQuery(window).height();
		
			var widthScale = (jQuery(window).width() / 700);
			var heightScale = (jQuery(window).height() / 690);

			var scale = widthScale;
			
			if(heightScale < scale) {
				scale = heightScale;
			}
			
			if(scale > 1) {
				scale = 1;
			}
		
			var containterH = jQuery('#container').outerHeight();
			var containterW = jQuery('#container').outerWidth();

			var scaledH = containterH * scale;
			var scaledW = containterW * scale;
		
			var top = (winH - containterH) / 2; (-(containterH - scaledH) / 2) + ((winH - scaledH) / 2);
			var left = (winW - containterW) / 2; (-(containterW - scaledW) / 2) + ((winW - scaledW) / 2);
		
			if(top < 0) {
				top = 0;
			}
		
			if(jQuery('html').hasClass('ie6')) {
				top = 0;
			}
		
			jQuery('#container').css({
				//'-webkit-transform':'scale(' + scale + ')',
				//'-moz-transform':'scale(' + scale + ')',
				//'-ms-transform':'scale(' + scale + ')',
				top: top,
				left:left
			});
			
			jQuery('body').css({
				height:jQuery(window).height(),
				width:jQuery(window).width()});
		});
		
		jQuery(window).resize();
		
		
		
	
		jQuery('div.navArrows a.left_arrow').click(function(evt) {
			evt.preventDefault();
			swipeRight();
			
		});
		
		jQuery('div.navArrows a.right_arrow').click(function(evt) {
			evt.preventDefault();
			swipeLeft();
			
		});
		function stopVideo() {
		
		jQuery('video').trigger('pause');
	}
	
	});
})();

