// Navigation mit ausklappbaren Submenüs + Hovereffekt
// Autor Harald Böhm
// Version 1.0 vom 11. November 2001
// ##############################################################
// Script für den Internet Explorer und den Netscape ab Version 6
// ##############################################################

// Definition einiger Variablen
var x
var y
var z
var zustand
var hover=1  // muss initialisiert werden. Nimmt im Verlauf den Wert von x an (Zeile 110 u. 121).
var first=1 // Verhindert, dass beim 1. Aufruf von 'index.php' '1ov.gif' durch '1.gif' ersetzt wird (Zeilen 105-107).
            // Wird in Zeile 111 auf '0' gesetzt, und hat weiter keine Bedeutung.
var check
var zustand
var ID      // Wird in Zeile 81 näher definiert (siehe auch Beschr. Zeile 76-78).
var cp_main = 0;
var cp_sub = 0;
var cp_gotIn = 0;

// Definition einiger Arrays
var ids = new Array("img2")
var subids = new Array(
	 new Array(),
	 new Array("sub21", "sub22", "sub23", "sub24"),
	 new Array(),
	 new Array(),
	 new Array(),
	 new Array("sub61", "sub62"),
	 new Array(),
	 new Array(),
	 new Array()
)
var imgs = new Array(
   new Array(),
	 new Array ("img21", "img22", "img23", "img24"),
	 new Array (),
	 new Array (),
	 new Array (),
	 new Array ("img61", "img62"),
	 new Array (),
 	 new Array (),
 	 new Array ()
)

function cp_do() {
  if (cp_main != 0) {
    mousi(cp_main);
    if (cp_sub != 0) {
      mouse(cp_main,cp_sub);
    }
  }
}

// Für das korrekte Vorladen der Hover_bilder sorgen.
// Die Funktion preload() wird aber erst am Ende des Skripts aufgerufen.
function preload() {
ov21 = new Image(); ov21.src = "images/sub2_1ov.gif";
ov22 = new Image(); ov22.src = "images/sub2_2ov.gif";
ov23 = new Image(); ov23.src = "images/sub2_3ov.gif";
ov24 = new Image(); ov24.src = "images/sub2_4ov.gif";

ov31 = new Image(); ov31.src = "images/sub3_1ov.gif";
ov32 = new Image(); ov32.src = "images/sub3_2ov.gif";
ov33 = new Image(); ov33.src = "images/sub3_3ov.gif";
ov34 = new Image(); ov34.src = "images/sub3_4ov.gif";

ov41 = new Image(); ov41.src = "images/sub4_1ov.gif";
ov42 = new Image(); ov42.src = "images/sub4_2ov.gif";
ov43 = new Image(); ov43.src = "images/sub4_3ov.gif";

ov51 = new Image(); ov51.src = "images/sub5_1ov.gif";
ov52 = new Image(); ov52.src = "images/sub5_2ov.gif";
ov53 = new Image(); ov53.src = "images/sub5_3ov.gif";

ov61 = new Image(); ov61.src = "images/sub6_1ov.gif";
ov62 = new Image(); ov62.src = "images/sub6_2ov.gif";

ov71 = new Image(); ov71.src = "images/sub7_1ov.gif";
ov72 = new Image(); ov72.src = "images/sub7_2ov.gif";

ov81 = new Image(); ov81.src = "images/sub8_1ov.gif";
ov82 = new Image(); ov82.src = "images/sub8_2ov.gif";

ov91 = new Image(); ov91.src = "images/sub9_1ov.gif";
ov92 = new Image(); ov92.src = "images/sub9_2ov.gif";


ov2 = new Image(); ov2.src = "images/2ov.gif";
ov3 = new Image(); ov3.src = "images/3ov.gif";
ov4 = new Image(); ov4.src = "images/4ov.gif";
ov5 = new Image(); ov5.src = "images/5ov.gif";
ov6 = new Image(); ov6.src = "images/6ov.gif";
ov7 = new Image(); ov7.src = "images/7ov.gif";
ov8 = new Image(); ov8.src = "images/8ov.gif";
ov9 = new Image(); ov9.src = "images/9ov.gif";
}

// Funktion 'timer(x)':
// Aufruf durch alle Layers mittels des EventHandlers "onmouseout". Bewirkt den Aufruf von "mouseouti(x)"
// nach 30ms, wenn die Variable "ID" nicht vorher durch "mousi(x)" oder 'mouse(z, y)' deaktiviert wird.
function timer(x) {
  eval("ID = setTimeout('mouseouti('+x+')', 50)")
}

// Funktion 'klappzu(x)':
function klappzu(x)  {
  if(document.all) {                                       // 'document.all' gilt für den IE
    if(zustand==0) {
      for (var i=1; i<=subids[check-1].length; i++)
        eval("sub"+check+i+".style.visibility = 'hidden'")
    } else if(zustand==1) {
      for (var i=1; i<=subids[check-1].length; i++)
        eval("sub"+check+i+".style.visibility = 'hidden'")
    }
  }
  else if(document.getElementById) {                       // 'document.getElementById' gilt für den NS6
    if(zustand==0) {
      for (var i=1; i<=subids[check-1].length; i++)
        eval("document.getElementById('sub"+check+i+"').style.visibility = 'hidden'")
    }
    else if(zustand==1) {
      for (var i=1; i<=subids[check-1].length; i++)
        eval("document.getElementById('sub"+check+i+"').style.visibility = 'hidden'")
    }
  }
}

// Funktion 'mousi(x)':
function mousi(x) {
  if(document.all) { // if browser == IE
    klappzu(x);
    if(first!=1) {
      eval("document.images.bild"+hover+".src = 'images/'+hover+'.gif'")
    }
    eval("document.images.bild"+x+".src = ov"+x+".src")
    clearTimeout(ID)
    hover=x;
    first=0;
    for (var i=1; i<=subids[x-1].length; i++)
      eval("sub"+x+i+".style.visibility = 'visible'")
    zustand=0;
    check=x;
  }
  else if(document.getElementById) { // if browser == NS
    klappzu(x);
    if(first!=1) {
      eval("document.images.bild"+hover+".src = 'images/'+hover+'.gif'")
    }
    eval("document.images.bild"+x+".src = ov"+x+".src")
    clearTimeout(ID)
    hover=x;
    first=0;
    for (var i=1; i<=subids[x-1].length; i++)
      eval("document.getElementById('sub"+x+i+"').style.visibility = 'visible'")
    zustand=0;
    check=x;
  }
}

// Funktion 'mouse(z, y)': Hover-Effekt in den Submenüs
function mouse(z, y) {
   clearTimeout(ID)
   if ( eval("document.images.img"+z+y) != null ) {
     eval("document.images.img"+z+y+".src = ov"+z+y+".src")
   }
   check=z;          //"z" wird an Variable "check" übergeben
   zustand=1; }

// Funktion 'mouseout(z, y)'
function mouseout(z, y) {
  eval("document.images.img"+z+y+".src = 'images/'+'sub'+z+'_'+y+'.gif'");
  cp_do();
}

// Funktion 'mouseouti(x)': Submenü wird unsichtbar
function mouseouti(x) {
  if(document.all) {
    eval("document.images.bild"+hover+".src = 'images/'+hover+'.gif'")
    for (var i=1; i<=subids[x-1].length; i++)
      eval("sub"+x+i+".style.visibility = 'hidden'")
  }
  else if(document.getElementById) {
    eval("document.images.bild"+hover+".src = 'images/'+hover+'.gif'")
    for (var i=1; i<=subids[x-1].length; i++)
      eval("document.getElementById('sub"+x+i+"').style.visibility = 'hidden'")
  }
  cp_do();
}

// Vorladen der Hover-Bilder
preload();

