/*
navigation.js
Javascript Datei für ghelms.com
Autor: T. Helms
Version: 1.2

Änderungshistorie:
  14.10.2007:
  	-changed: Preload weitestgehend entfernt
  	-fixed: Mauscursoränderung bei Pfeil rechts/links verbessert
  	-added: während Preload und Bildladens Veränderung des Mauscursors auf "wait"
  15.10.2007:
   -fixed: Bug in IE mit Einbuchstaben-Variablen (e,m -> er,ma)
  09.11.2007:
   -changed: Anzeige des Menüs beginnt immer beim letzten Bild

*/

function init()
{
	//Namenskonvention: Erklärungsbild: "e<MenüNr>_<laufendeNr>.jpg", d.h. e0_0.jpg ist Erklärungsbild von Home
	//Namenskonvention: Malbild: "m<MenüNr>_<laufendeNr>.jpg", d.h. m0_0.jpg ist Malbild von Home
	//Bildernamen:
	// Menü Home = "menueBild0"
	// Menü Pastel = "menueBild1"
	// Menü Pastel = "menueBild2"
	// Menü Pastel = "menueBild3"
	// Menü Pastel = "menueBild4"
	// Menü Pastel = "menueBild5"
	// Menü Pastel = "menueBild6"
	// Menü Pastel = "menueBild7"
	// Menü Pastel = "menueBild8"
	//
	// Erklärungsbild = "e"
	// Malbild = "m"
	// Pfeil links = "pl"
	// Pfeil rechts = "pr"
	
	document.body.style.cursor = "wait"; //Mauszeiger auf busy
		
	mUnmarked = new Array(9);	//die Menübilder nicht geklickt
	mMarked = new Array(9); 	//die Menübilder geklickt
	
	EintragAnz = new Array(9); //Maximal 9 verschiedene Menüs
	
	EintragAnz[0] = 1; //Echte Anzahl Elemente unter Home   <======= Hier Ändern, Gesa!
	EintragAnz[1] = 6; //Echte Anzahl Elemente unter Pastel
	EintragAnz[2] = 10; //Echte Anzahl Elemente unter Oil/Acrylic
	EintragAnz[3] = 8; //Echte Anzahl Elemente unter Mixed Media
	EintragAnz[4] = 6; //Echte Anzahl Elemente unter Sketches
	EintragAnz[5] = 0; //Echte Anzahl Elemente unter <leer1>
	EintragAnz[6] = 0; //Echte Anzahl Elemente unter <leer2>
	EintragAnz[7] = 1; //Echte Anzahl Elemente unter Links
	EintragAnz[8] = 1; //Echte Anzahl Elemente unter About Me
	                   //0 bedeutet Menü existiert nicht

	er = new Array(); //die Erklärungsbilder
	ma = new Array(); //die Malbilder
	
	// Alle benötigte Bildobjekte inkl Dateinamen/-pfad anlegen
	
	for(var menueZaehler = 0; menueZaehler < 9; menueZaehler++) //alle Menüs durchlaufen
	{
		er[menueZaehler] = new Array();
		ma[menueZaehler] = new Array();
		
		mUnmarked[menueZaehler] = new Image(); //Bildobjekt für dieses nicht geklickte Menübild anmelden
		mUnmarked[menueZaehler].src = "./formular/menues/mu" + menueZaehler +".jpg"; //Pfad für dieses nicht geklickte Menübild generieren
		
		mMarked[menueZaehler] = new Image(); //Bildobjekt für dieses geklickte Menübild anmelden
		mMarked[menueZaehler].src = "./formular/menues/mm" + menueZaehler +".jpg"; //Pfad für dieses geklickte Menübild generieren
		
		for(var nr = 0; nr < EintragAnz[menueZaehler]; nr++) //Alle Einträge des jeweiligen Menüs durchlaufen
		{
			er[menueZaehler][nr]= new Image(); //Bildobjekt für Erklärungsbild anmelden
			ma[menueZaehler][nr]= new Image(); //Bildobjekt für Malbild anmelden
			
			if (nr == (EintragAnz[menueZaehler] - 1)) //kein starkes Preload, nur erste (nullte) Ebene aller Menüs
			{
				er[menueZaehler][nr].src = "./bilder/e" + menueZaehler + "_" + nr + ".jpg"; //Pfad für dieses Erklärungsbild generieren
				ma[menueZaehler][nr].src = "./bilder/m" + menueZaehler + "_" + nr + ".jpg"; //Pfad für dieses Malbild generieren
			}
		}
	}
	
	PfeilRechts = new Image();
	PfeilRechts.src = "./formular/menues/pr.jpg";
	PfeilLinks = new Image();
	PfeilLinks.src = "./formular/menues/pl.jpg";
		
	NonPfeilRechts = new Image();
	NonPfeilRechts.src = "./formular/menues/npr.jpg";		
	NonPfeilLinks = new Image();
	NonPfeilLinks.src = "./formular/menues/npl.jpg";
		
	aktMenue = 255; //Flag für aktives Menü deklarieren
	altMenue = 255; //Flag für vorheriges Menü deklarieren
	MenueWechsel(0); //Home aktiv setzen
	DummyString = new String;

	document.body.style.cursor = "default"; //Mauszeiger auf normal zurücksetzen
}

function MenueWechsel(MenueNr)
{
	var StrAktMenue = "";
	var StrAltMenue = "";
		
	if (EintragAnz[MenueNr] == 0) //Wenn Menü noch nicht existiert -> abbruch
	{
		return;
	}
		
	if (MenueNr != aktMenue) //Wenn neues Menü geklickt wurde
	{
				
		if (altMenue <= EintragAnz.length) //Wenn vorher ein echtes Menü aktiv war
		{	
			StrAltMenue = "menueBild" + altMenue; //Generiere HTML-Namen des alten Menübildes
							
		 	document.images[StrAltMenue].src = mUnmarked[altMenue].src; //altes Menübild mit nicht geklicktem ersetzen
		}
				
		aktMenue = MenueNr; //geklicktes Menü zu aktuellem Menü machen
		StrAktMenue = "menueBild" + aktMenue; //Generiere HTML-Namen des aktuellen Menübildes
		
		document.images[StrAktMenue].src = mMarked[MenueNr].src; //aktuelles Menübild mit geklicktem ersetzen
		
		altMenue = aktMenue; //Aktuelles Menü merken
	
		aktEbene = EintragAnz[aktMenue] - 1; //Nach Menüauswahl immer auf letztem Bild starten!
							
		document.images["e"].src = er[aktMenue][aktEbene].src; //Start Erklärungsbild für dieses Menü laden
		document.images["m"].src = ma[aktMenue][aktEbene].src; //Start Malbild für dieses Menü laden
		
		document.images["pl"].src = NonPfeilLinks.src; //Linkspfeil bei Start-Bild ausblenden
	
		
		if (EintragAnz[aktMenue] > 1) //Wenn mehr als ein Bild vorhanden
		{
			document.images["pr"].src = PfeilRechts.src; //Rechtspfeil einblenden
		}
		else
		{
			document.images["pr"].src = NonPfeilRechts.src; //ansonsten Rechtspfeil ausblenden
		}		
	}
	
	if (MenueNr == 7) //Wenn "Links" geklickt wurde
	{
		LinkFenster = window.open("links.htm","Links by Paint & Pastel","width=450,height=350");
	}
}

function Pfeil(Richtung)
{
	if ((Richtung == "rechts") && (aktEbene > 0)) //Wenn Pfeil-Rechts geklickt und gültig
	{
		aktEbene--; //Ebenen-Zähler verkleinern

		if (er[aktMenue][aktEbene].src == "") //Wenn Bild des aktuellen Menüs noch nicht initialisiert (=geladen)
		{
			document.body.style.cursor = "wait";
			er[aktMenue][aktEbene].src = "./bilder/e" + aktMenue + "_" + aktEbene + ".jpg"; //Pfad für dieses Erklärungbild generieren
			ma[aktMenue][aktEbene].src = "./bilder/m" + aktMenue + "_" + aktEbene + ".jpg"; //Pfad für dieses Malbild generieren	
			document.body.style.cursor = "default";
		}

		document.images["e"].src = er[aktMenue][aktEbene].src; //Start Erklärungsbild für dieses Menü laden
		document.images["m"].src = ma[aktMenue][aktEbene].src; //Start Malbild für dieses Menü laden
		
		if (aktEbene == 0) //Wenn kein weiteres Bild mehr
		{
			document.images["pr"].src = NonPfeilRechts.src; //Pfeil nach rechts ausblenden
		}
		
		if (aktEbene == (EintragAnz[aktMenue] - 2)) //Wenn vorher noch kein Pfeil nach links angezeigt wurde
		{
			document.images["pl"].src = PfeilLinks.src; //Pfeil nach links anzeigen
		}
	}
	
	if ((Richtung == "links") && (aktEbene < (EintragAnz[aktMenue] - 1))) //Wenn Pfeil-Links geklickt und gültig
	{
		aktEbene++; //Ebenen-Zähler erhöhen
	
		document.images["e"].src = er[aktMenue][aktEbene].src; //Start Erklärungsbild für dieses Menü laden
		document.images["m"].src = ma[aktMenue][aktEbene].src; //Start Malbild für dieses Menü laden
		
		if (aktEbene == 1) //Wenn vorher noch kein Pfeil nach rechts angezeigt wurde
		{
			document.images["pr"].src = PfeilRechts.src; //Pfeil nach rechts anzeigen
		}
	}
	
	if ((Richtung == "links") && (aktEbene == (EintragAnz[aktMenue] - 1))) //Wenn auf Startebene
	{
		document.images["pl"].src = NonPfeilLinks.src; //Pfeil nach links ausblenden
	}
	
}

function Maus(Richtung,Bild)
{
	if (Richtung == "in")
	{
		if ((Bild == "pl") && (document.images["pl"].src != PfeilLinks.src)) //wenn Maus über Pfeil links steht und der nicht angezeigt wird
		{
			document.body.style.cursor = "default";
		}
		else if ((Bild == "pr") && (document.images["pr"].src != PfeilRechts.src)) //wenn Maus über Pfeil rechts steht und der nicht angezeigt wird
		{
			document.body.style.cursor = "default";
		}
		else
		{
			document.body.style.cursor = "pointer";
		}
	}
	else
	{
		document.body.style.cursor = "default";
	}
}

