// 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).

// Definition einiger Arrays
var ids = new Array("img2")
var subids = new Array(
         new Array(),
         new Array("sub21", "sub22", "sub23", "sub24", "sub25", "sub26"),
     new Array("sub31", "sub32")
)
var imgs = new Array(
   new Array(),
         new Array("img21", "img22", "img23", "img24", "img25", "img26"),
     new Array("img31", "img32")
)
// 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 = "img/navigation/sub2_1ov.gif";
ov22 = new Image(); ov22.src = "img/navigation/sub2_2ov.gif";
ov23 = new Image(); ov23.src = "img/navigation/sub2_3ov.gif";
ov24 = new Image(); ov24.src = "img/navigation/sub2_4ov.gif";
ov25 = new Image(); ov25.src = "img/navigation/sub2_5ov.gif";
ov26 = new Image(); ov26.src = "img/navigation/sub2_6ov.gif";
ov31 = new Image(); ov31.src = "img/navigation/sub3_1ov.gif";
ov32 = new Image(); ov32.src = "img/navigation/sub3_2ov.gif";

ov2 = new Image(); ov2.src = "img/navigation/2ov.gif";
ov3 = new Image(); ov3.src = "images/3ov.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) {
            klappzu(x);
                        if(first!=1) {
                        eval("document.images.bild"+hover+".src = 'img/navigation/'+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) {
            klappzu(x);
      if(first!=1) {
                        eval("document.images.bild"+hover+".src = 'img/navigation/'+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)
   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 = 'img/navigation/'+'sub'+z+'_'+y+'.gif'")
}

// Funktion 'mouseouti(x)': Submenü wird unsichtbar
function mouseouti(x) {
  if(document.all) {
     eval("document.images.bild"+hover+".src = 'img/navigation/'+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 = 'img/navigation/'+hover+'.gif'")
     for (var i=1; i<=subids[x-1].length; i++)
     eval("document.getElementById('sub"+x+i+"').style.visibility = 'hidden'")
        }
}

// Vorladen der Hover-Bilder
preload();
