$(document).ready(function() {
	initHandlers();
});

var horizontalactualposition =	0;
var verticalactualposition =	0;
var horizontalmovemultiplier =	640;
var verticalmovemultiplier =	640;

function initHandlers() {

	// HORIZONTAL NAVIGATION
	$('#navilogobox').click(function()		{ manageHorizontalNavigation(0) });
	$('#navileistungen').click(function()	{ manageHorizontalNavigation(1) });
	$('#navireferenzen').click(function()	{ manageHorizontalNavigation(2) });
	$('#navipartner').click(function()		{ manageHorizontalNavigation(3) });
	$('#navikontakt').click(function()		{ manageHorizontalNavigation(4) });
	$('#navijobs').click(function()			{ manageHorizontalNavigation(5) });
	$('#naviimpressum').click(function()	{ manageHorizontalNavigation(6) });

	// VERTICAL NAVIGATION LEISTUNGEN
	$('#leftnavi-beratung').click(function() 			{ moveVertical(1); });
	$('#leftnavi-internetauftritte').click(function() 	{ moveVertical(2); });
	$('#leftnavi-cms').click(function() 				{ moveVertical(3); });
	$('#leftnavi-online-shops').click(function() 		{ moveVertical(4); });
	$('#leftnavi-online-marketing').click(function() 	{ moveVertical(5); });
	$('#leftnavi-programmierung').click(function() 		{ moveVertical(6); });
	$('#leftnavi-it-service').click(function() 			{ moveVertical(7); });

	// VERTICAL NAVIGATION PROJEKTE
	$('#leftnavi-projekte-1').click(function()	{ moveVertical(1); });
	$('#leftnavi-projekte-2').click(function()	{ moveVertical(2); });
	$('#leftnavi-projekte-3').click(function()	{ moveVertical(3); });
	$('#leftnavi-projekte-4').click(function()	{ moveVertical(4); });
	$('#leftnavi-projekte-5').click(function()	{ moveVertical(5); });
	$('#leftnavi-projekte-6').click(function()	{ moveVertical(6); });

	// VERTICAL NAVIGATION WIR-UND-PARTNER
	//$('#leftnavi-jens-quast').click(function()	{ moveVertical(1); });
	//$('#leftnavi-partner').click(function()		{ moveVertical(2); });

	// VERTICAL NAVIGATION KONTAKT
	$('#leftnavi-kontaktformular').click(function()	{ moveVertical(1); });

	// JUMP-LINKS
	$('.link-jump-down-1').click(function()	{ moveDown(1); });
	$('.link-jump-down-2').click(function()	{ moveDown(2); });
	$('.link-jump-down-3').click(function()	{ moveDown(3); });
	$('.link-jump-down-4').click(function()	{ moveDown(4); });
	$('.link-jump-down-5').click(function()	{ moveDown(5); });
	$('.link-jump-down-6').click(function()	{ moveDown(6); });

	/*	// CAROUSEL NAVIGATION LEISTUNGEN
	$('#leistungen-beratung').click(function() { moveVertical(1);	});
	$('#leistungen-internetauftritte').click(function() { moveVertical(2); });
	$('#leistungen-cms').click(function() { moveVertical(3); });
	$('#leistungen-online-shops').click(function() { moveVertical(4); });
	$('#leistungen-intranetloesungen').click(function() { moveVertical(5); });
	$('#leistungen-online-marketing').click(function() { moveVertical(6); });
	$('#leistungen-social-media').click(function() { moveVertical(7); });
	$('#leistungen-grafik-text').click(function() { moveVertical(8); });
	$('#leistungen-programmierung').click(function() { moveVertical(9); });
	$('#leistungen-it-Service').click(function() { moveVertical(10); }); */
}

function manageHorizontalNavigation (pos) {
		colorChangeHorizontalNavigation(pos);
		displayChangeVerticalNavigation(pos);
		if (verticalactualposition!=0) { moveVertical(0) };
		moveHorizontal(pos);
}

function moveHorizontal(targetpos) { // input: horizontal target position
	if (targetpos!=horizontalactualposition) {
		horizontalmoveresult = targetpos * horizontalmovemultiplier;
		$('#contenthorizontalcontainer').animate({
			right: horizontalmoveresult,
		}, 1000, function() {
			// Animation complete.
		});
		horizontalactualposition = targetpos;
	}
}

function moveVertical(targetpos) { // input: [vertical target position]
	//alert ("column: "+column+", targetpos: "+targetpos+", verticalactualposition: "+verticalactualposition);
	if (targetpos!=verticalactualposition) {
		verticalmoveresult = targetpos * verticalmovemultiplier;
		switch(horizontalactualposition) {
			case 1: // Leistungen
				$('#leistungenverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
				break;
			case 2: // Referenzen
				$('#referenzenverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
				break;
			case 3: // Über uns
				$('#ueberunsverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
				break;
			case 4: // Kontakt
				$('#kontaktverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
				break;
		}
		verticalactualposition = targetpos;
	}
}

function moveDown(jumpamount) { // input: [vertical jumps count]
	targetpos = verticalactualposition + jumpamount;
	verticalmoveresult = targetpos * verticalmovemultiplier;
	// alert ("column: "+horizontalactualposition+", targetpos: "+targetpos+", verticalactualposition: "+verticalactualposition);
	switch(horizontalactualposition) {
		case 1: // Leistungen
			$('#leistungenverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
			break;
		case 2: // Referenzen
			$('#referenzenverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
			break;
		case 3: // Über uns
			$('#ueberunsverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
			break;
		case 4: // Kontakt
			$('#kontaktverticalcontainer').animate({ bottom: verticalmoveresult }, 1000);
			break;
	}
	verticalactualposition = targetpos;
}

function colorChangeHorizontalNavigation(targetpos) { // input: horizontal target position
	if (targetpos!=horizontalactualposition) {
		switch(targetpos) {
			case 1:
				$('#navileistungen').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 2:
				$('#navireferenzen').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 3:
				$('#navipartner').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 4:
				$('#navikontakt').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 5:
				$('#navijobs').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 6:
				$('#naviimpressum').animate({
					color: "#0b1473",
				}, 1000, function() {
					// Animation complete.
				});
				break;
		}
		switch(horizontalactualposition) {
			case 1:
				$('#navileistungen').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 2:
				$('#navireferenzen').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 3:
				$('#navipartner').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 4:
				$('#navikontakt').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 5:
				$('#navijobs').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
			case 6:
				$('#naviimpressum').animate({
					color: "#808080",
				}, 1000, function() {
					// Animation complete.
				});
				break;
		}
	}
}

function displayChangeVerticalNavigation(targetpos) { // input: horizontal target position
	if (targetpos!=horizontalactualposition) {
		switch(targetpos) {
			case 1:
				$('#leftnavi-leistungen').toggle();
				$('#leftnavi-leistungen').animate({
					opacity: "1",
				}, 1000, function() {
					// Animation complete.
				});
				break;

			case 2:
				$('#leftnavi-projekte').toggle();
				$('#leftnavi-projekte').animate({
					opacity: "1",
				}, 1000, function() {
					// Animation complete.
				});
				break;

			case 3:
				$('#leftnavi-wir-und-partner').toggle();
				$('#leftnavi-wir-und-partner').animate({
					opacity: "1",
				}, 1000, function() {
					// Animation complete.
				});
				break;

			case 4:
				$('#leftnavi-kontakt').toggle();
				$('#leftnavi-kontakt').animate({
					opacity: "1",
				}, 1000, function() {
					// Animation complete.
				});
				break;

		}
		switch(horizontalactualposition) {
			case 1:
				$('#leftnavi-leistungen').animate({
					opacity: "0",
				}, 1000, function() {
					// Animation complete.
					$('#leftnavi-leistungen').toggle();
				});
				break;
			
			case 2:
				$('#leftnavi-projekte').animate({
					opacity: "0",
				}, 1000, function() {
					// Animation complete.
					$('#leftnavi-projekte').toggle();
				});
				break;
			
			case 3:
				$('#leftnavi-wir-und-partner').animate({
					opacity: "0",
				}, 1000, function() {
					// Animation complete.
					$('#leftnavi-wir-und-partner').toggle();
				});
				break;

			case 4:
				$('#leftnavi-kontakt').animate({
					opacity: "0",
				}, 1000, function() {
					// Animation complete.
					$('#leftnavi-kontakt').toggle();
				});
				break;
		}
	}
}

