jQuery.noConflict();
jQuery(document).ready(function(){	
	//Elemente ausblenden
	jQuery("#kontaktformular").css({'display' : 'none'}); // Kontaktformular
	jQuery("#impressum").css({'display' : 'none'}); // Impressum
	jQuery("#arrow_left").fadeTo("slow", 0); // linken Pfeil ausblenden
	
	//Bei entsprechendem Link richtige Seite anzeigen
	var verweis = window.location.href.substr(window.location.href.lastIndexOf("#"));
	if(verweis == "#kontaktformular") wechselInhalt("#footer a:eq(1)");
	if(verweis == "#impressum") wechselInhalt("#footer a:eq(2)");
	
	var inProcess = false;
	
	//Funktion bei Klick auf rechten Pfeil in Referenz-Box
	jQuery("#arrow_right").click(function () {
		if (inProcess == true) return false;
		inProcess = true;
		var n = getFirstElement();
		if (n == 0) { //Wenn erstes Element eingeblendet ist
			jQuery("#arrow_right").fadeTo("slow", 0); // Pfeilkomplett ausblenden
			inProcess = false;
		} else {
			var hideEl = "#ref" + (n+2); //Element, das versteckt werden soll
			var rightEl = "#ref" + (n+1); //Element, das sich eins weiter bewegt, aber sichtbar bleibt (rechts)
			var leftEl = "#ref" + n; //Element, das sich eins weiter bewegt, aber sichtbar bleibt (links)
			var showEl = "#ref" + (n-1); //Element, das eingeblendet werden soll
			//Alle Bilder verstecken & ausgewählte neue Bilder öffnen
			jQuery(hideEl).hide("drop", { direction: "down" }, 900);
			jQuery(rightEl).fadeOut(450);
			jQuery(leftEl).fadeOut(450, function(){ //Sobald alle Elemente nach links ausgeblendet sind wird diese Funktion ausgeführt
				jQuery(rightEl).fadeIn(450);
				jQuery(leftEl).fadeIn(450);
				jQuery(showEl).show("drop", { direction: "up" }, 900, function () { inProcess = false; });
			});
			if (n == 1) { //Wenn vor wechsel der Bilder das Bild direkt nach dem ersten eingeblendet war
				jQuery("#arrow_right").fadeTo("slow", 0.1); //Pfeil-Deckkraft auf 10% setzen
			}
			jQuery("#arrow_left").fadeTo("slow", 1); //Falls Pfeil auf anderer Seite ausgeblendet war, wird er wieder auf 100% Deckkraft gestellt
		}
		return false;
	});
	
	//Funktion bei Klick auf den linken Pfeil in Referenz-Box
	jQuery("#arrow_left").click(function () {
		if (inProcess == true) return false;
		inProcess = true;
		var n = getFirstElement();
		if (!document.getElementById("ref"+(n+3))) { //Wenn das vom ersten eingeblendete Bild um 3 abweichende Bild nicht vorhanden ist
			jQuery("#arrow_left").fadeTo("slow", 0); //Pfeil komplett ausblenden
			inProcess = false;
		} else {
			var hideEl = "#ref" + n; //Element, das versteckt werden soll
			var leftEl = "#ref" + (n+1); //Element, das sich eins weiter bewegt, aber sichtbar bleibt (links)
			var rightEl = "#ref" + (n+2); //Element, das sich eins weiter bewegt, aber sichtbar bleibt (rechts)
			var showEl = "#ref" + (n+3); //Element, das eingeblendet werden soll
			//Alle Bilder verstecken & ausgewählte neue Bilder öffnen
			jQuery(hideEl).hide("drop", { direction: "down" }, 900);
			jQuery(rightEl).fadeOut(450);
			jQuery(leftEl).fadeOut(450, function(){ //Sobald alle Elemente nach links ausgeblendet sind wird diese Funktion ausgeführt
				jQuery(rightEl).fadeIn(450);
				jQuery(leftEl).fadeIn(450);
				jQuery(showEl).show("drop", { direction: "up" }, 900, function () { inProcess = false; });
			});
			if (!document.getElementById("ref"+(n+4))) { //Wenn das vom ersten eingeblendete Bild (n) um 4 abweichende Bild nicht vorhanden ist
				jQuery("#arrow_left").fadeTo("slow", 0.1); //Pfeil-Deckkraft auf 10% setzen
			}
			jQuery("#arrow_right").fadeTo("slow", 1); //Falls Pfeil auf anderer Seite ausgeblendet war, wird er wieder auf 100% Deckkraft gestellt
		}
		return false;
	});
	
	//Home einblenden
	jQuery("h1:eq(0) a").click(function () { //Logo
		wechselInhalt("h1:eq(0) a");
		return false;
	});
	jQuery("#footer a:eq(0)").click(function () { //Home-Link im Footer
		wechselInhalt("#footer a:eq(0)");
		return false;
	});
	
	//Kontaktformular einblenden
	jQuery("#footer a:eq(1)").click(function () { //Kontakt-Link im Footer
		wechselInhalt("#footer a:eq(1)");
		return false;
	});
	jQuery("#kontakt a:eq(0)").click(function () { //Kontakt-Button
		wechselInhalt("#kontakt a:eq(0)");
		return false;
	});
	jQuery("#impressum a:eq(1)").click(function () {
		wechselInhalt("#impressum a:eq(1)");
		return false;
	});
	
	//Impressum einblenden
	jQuery("#footer a:eq(2)").click(function () { //Impressums-Link im Footer
		wechselInhalt("#footer a:eq(2)");
		return false;
	});
	
	
	
	function getFirstElement () {
		var element = "#ref0";
		var n = 0;
		while (jQuery(element).css("display") == "none" && n < 100) { //Solange Element mit ID "ref"+n nicht angezeigt wird
			n++;
			element = "#ref" + n; //nächstes Element in Variable speichern
		}
		//Element n ist erstes Element, das angezeigt wird
		return n;
	}
	
	//Inhalt wechseln
	function wechselInhalt (element) {
		if (inProcess == true) return false;
		inProcess = true;
		var ziel = jQuery(element).attr("href"); //Zu zeigendes Div einlesen
		if (jQuery("#kontaktformular").css("display") == "block") { //Wenn Kontaktformular momentan eingeblendet ist
			if (ziel == "#kontaktformular") return false; //Wenn das Ziel auch das Kontaktformular ist, Funktion abbrechen
			jQuery("#kontaktformular").slideUp(1000, function () { //Kontaktformular ausblenden
				if (ziel == "#home") {
					jQuery("#footer li:eq(1)").css({'display' : 'none'}); //Link zu Home ausblenden
					jQuery("#kompetenzen").slideDown(1000);
					jQuery("#preise").slideDown(1000);			//Startseite einblenden
					jQuery("#kontakt").slideDown(1000);
				} else if (ziel == "#impressum") {
					jQuery("#footer li:eq(3)").css({'display' : 'none'}); //Link zu Impressum ausblenden
					jQuery(ziel).slideDown(1000); //Impressum einblenden
				}
				jQuery("#footer li:eq(2)").css({'display' : 'inline'}); //Link zu Kontaktformular einblenden
			});
		}
		if (jQuery("#impressum").css("display") == "block") { //Wenn Impressum momentan eingeblendet ist
			if (ziel == "#impressum") return false; //Wenn das Ziel auch das Impressum ist, Funktion abbrechen
			jQuery("#impressum").slideUp(1000, function () { //Impressum ausblenden
				if (ziel == "#home") {
					jQuery("#footer li:eq(1)").css({'display' : 'none'}); //Link zu Home ausblenden
					jQuery("#kompetenzen").slideDown(1000);
					jQuery("#preise").slideDown(1000);			//Startseite einblenden
					jQuery("#kontakt").slideDown(1000);
				} else if (ziel == "#kontaktformular") {
					jQuery("#footer li:eq(2)").css({'display' : 'none'}); //Link zu Kontaktformular ausblenden
					jQuery(ziel).slideDown(1000); //Kontaktformular einblenden
				}
				jQuery("#footer li:eq(3)").css({'display' : 'inline'}); //Link zu Impressum einblenden
			});
		}
		if (jQuery("#kompetenzen").css("display") == "block") { //Wenn Startseite momentan eingeblendet
			if (ziel == "#home") return false; //Wenn das Ziel auch die Startseite ist, Funktion abbrechen
			jQuery("#kompetenzen").slideUp(1000);
			jQuery("#preise").slideUp(1000);					//Startseite ausblenden
			jQuery("#kontakt").slideUp(1000, function () {
				if (ziel == "#kontaktformular") {
					jQuery("#footer li:eq(2)").css({'display' : 'none'}); //Link zu Kontaktformular ausblenden
				} else if (ziel == "#impressum") {
					jQuery("#footer li:eq(3)").css({'display' : 'none'}); //Link zu Impressum ausblenden
				}
				jQuery(ziel).slideDown(1000); //Ziel einblenden
				jQuery("#footer li:eq(1)").css({'display' : 'inline'}); //Link zu Home einblenden
			});
		}
		inProcess = false;
	}
	
	//Bei Absenden des Formulars
	jQuery(".submit").click(function () {
		//Textfelder einlesen
		var name = jQuery(".text:eq(0)").val();
		var mail = jQuery(".text:eq(1)").val();
		var nachricht = jQuery("textarea").val();
		//Per AJAX post an ctrl.php schicken
		jQuery.post("ctrl.php", { name:name, mail:mail, nachricht:nachricht }, function(gesendet){
 			//gesendet enthält echo der php-datei; diese Funktion wird aufgerufen, wenn der request beendet ist.
			if (gesendet == "true") {//Wenn E-Mail erfolgreich versandt wurde
				jQuery("#nachricht_gesendet").show("drop", { direction: "up" }, 1000, function () {
					setTimeout(function () { jQuery("#nachricht_gesendet").hide("drop", { direction: "down" }, 1000)}, 2000);
				});
			} else if (gesendet == "fehler") {//Wenn ein interner Fehler beim Senden auftrat
				jQuery("#nachricht_fehler").show("drop", { direction: "up" }, 1000, function () {
					setTimeout(function () { jQuery("#nachricht_fehler").hide("drop", { direction: "down" }, 1000)}, 5500);
				});
			} else if (gesendet == "empty") {//Wenn nicht alle Formularfelder korrekt ausgefüllt sind
				jQuery("#nachricht_ausfuellen").show("drop", { direction: "up" }, 1000, function () {
					setTimeout(function () { jQuery("#nachricht_ausfuellen").hide("drop", { direction: "down" }, 1000)}, 3000);
				});
			}
		});
		return false;
	});
});
