// JavaScript Document
// beim Laden initialiesieren




// initialisieren:
function init() {
	// Mouseoverfunktionen dem Hauptmenü hinzufügen
	lis = document.getElementById("menu").getElementsByTagName("LI");
	if(lis) {
		for(j=0;j<lis.length;j++) {
			if(lis[j].className.indexOf("ebene1") == "0") {addEvent(lis[j], "mouseover", highliteHauptmenu);}
			else {
	 			if(lis[j].className.indexOf("ebene2") == "0") addEvent(lis[j], "mouseover", highliteFolgemenu);
				addEvent(lis[j], "mouseover", setMenuTimer);
			}
			addEvent(lis[j], "mouseout", setMenuTimer);
			addEvent(lis[j], "click", goToChildHref);
		}
		if(document.getElementsByTagName("TABLE") != null) {
			tables = document.getElementsByTagName("TABLE");
	     for(i=0;i<tables.length;i++) {
	        if(tables[i].className.search(/altTable/) >= 0) {
	          stripe(tables[i]);
	        }
	     }
	  }
  }
}


// Event-Hilfsfunktionen Funktionen
function addEvent(obj, evType, fn){
  if (obj.addEventListener){
    obj.addEventListener(evType, fn, false);
    return true;
  } else if (obj.attachEvent){
    var r = obj.attachEvent("on"+evType, fn);
    return r;
  } else {
    return false;
	}
}

function getGetTarget(evt) {
	if(evt.srcElement) return evt.srcElement;
	else return evt.target;
}

// Timer-Funktionen
function setMenuTimer() {
	clearTimeout(timerHauptmenu);
	timerHauptmenu = setTimeout("downliteHauptmenu()", 1000);
}


// Ändert die Klasse des feuernden Elements
// Klappmenü anzeigen
function highliteHauptmenu(evt) {
	clearTimeout(timerHauptmenu);
	obj = getGetTarget(evt);
	if (obj.nodeName == "A" && obj.parentNode.className.indexOf("ebene1") == 0) {
		ul = obj.parentNode.getElementsByTagName("UL");
		if (ul[0]) {
	 		downliteHauptmenuBut(ul[0]);
			ul[0].className = ul[0].className.replace("normal", "over");
		} else {
			downliteHauptmenu();
		}
		if(obj.parentNode.className.indexOf("ebene1") != -1) {
			if(obj.className != "gewaehlt") obj.className = "aktiv";
		}
	}
}

function highliteFolgemenu(evt) {
	clearTimeout(timerHauptmenu);
	obj = getGetTarget(evt);
	if (obj.nodeName == "A") {
		obj.className = "ebene2_aktiv";
		ul = obj.parentNode.getElementsByTagName("UL");
		if (ul[0] != null && ul[0].nodeName=="UL") {
			ul[0].className = ul[0].className.replace("normal", "over");
 			downliteFolgemenuLevel3But(ul[0]);
		} else {
			downliteFolgemenuLevel3(obj);
		}
	}
}

// Diese funktion setzt alle Hauptmenupunkte 
function downliteHauptmenu() {
	lis = document.getElementById("menu").getElementsByTagName("A");
	for(i in lis) {
		if(lis[i].className=="aktiv") lis[i].className="";
	}
	uls = document.getElementById("menu").getElementsByTagName("UL");
	for(j=0;j<uls.length;j++) {
		if(uls[j].nodeName == "UL") {
			uls[j].className = uls[j].className.replace("over", "normal");
		}
	}
}
// alle anderen Klappmenüs ausblenden
function downliteHauptmenuBut(current) {
	lis = document.getElementById("menu").getElementsByTagName("A");
	for(i in lis) {
		if(lis[i].className=="aktiv") lis[i].className="";
	}
	uls = document.getElementById("menu").getElementsByTagName("ul");
	for(j=0;j<uls.length;j++) {
		if(uls[j].nodeName == "UL" && uls[j] != current) uls[j].className = uls[j].className.replace("over", "normal");
	}
}
// Alle Menüs der 3. Ebene ausblenden
function downliteFolgemenuLevel3(level2) {
	ul = level2.parentNode.parentNode;
	lis = ul.getElementsByTagName("A");
	for(i in lis) {
		if(lis[i].className=="ebene2_aktiv") lis[i].className="ebene2";
	}
	uls = ul.getElementsByTagName("UL");
	for(j in uls) {
 		if(uls[j].nodeName == "UL") uls[j].className = uls[j].className.replace("over", "normal");
	}
}

// Andere Menüs der 3. Ebene ausblenden
function downliteFolgemenuLevel3But(current) {
	ul = current.parentNode.parentNode;
	lis = ul.getElementsByTagName("A");
	for(i in lis) {
		if(lis[i].className=="ebene2_aktiv" && lis[i] != current.parentNode.getElementsByTagName("A")[0]) lis[i].className="ebene2";
	}
	uls = ul.getElementsByTagName("UL");
	for(j in uls) {
 		if(uls[j].nodeName == "UL" && uls[j] != current) uls[j].className = uls[j].className.replace("over", "normal");
	}
}

// Damit man nicht genau die Links treffen muss:
function goToChildHref(evt) {
		//Get the firing Element
	li = getGetTarget(evt);
	if(li  && li.parentNode.href) location.href = li.parentNode.href;
}

function hasClass(obj) {
     var result = false;
     if (obj.getAttributeNode("class") != null) {
         result = obj.getAttributeNode("class").value;
     }
     return result;
  }
function stripe(table) {

    // the flag we'll use to keep track of
    // whether the current row is odd or even
    var even = false;

    // if arguments are provided to specify the colours
    // of the even & odd rows, then use the them;
    // otherwise use the following defaults:
    var evenColor = arguments[1] ? arguments[1] : "#fff";
    var oddColor = arguments[2] ? arguments[2] : "#CFCFCA";

    // obtain a reference to the desired table
    // if no such table exists, abort
    // Änderung navigate 26.1.2006 15:43:00
    var table = table;
    if (! table) { return; }

    trs = table.getElementsByTagName("TR");
		even = true;
		for(i in trs) {
			if(i%2 == 0) trs[i].className = "trAlt";
		}

		return;

		// by definition, tables can have more than one tbody
    // element, so we'll have to get the list of child
    // &lt;tbody&gt;s
    var tbodies = table.getElementsByTagName("tbody");

    // and iterate through them...
    for (var h = 0; h < tbodies.length; h++) {

     // find all the &lt;tr&gt; elements...
      var trs = tbodies[h].getElementsByTagName("tr");

      // ... and iterate through them
      for (var i = 0; i < trs.length; i++) {

        // avoid rows that have a class attribute
        // or backgroundColor style
        if (! hasClass(trs[i]) &&
            ! trs[i].style.backgroundColor) {

          // get all the cells in this row...
          var tds = trs[i].getElementsByTagName("td");

          // and iterate through them...
          for (var j = 0; j < tds.length; j++) {

            var mytd = tds[j];

            // avoid cells that have a class attribute
            // or backgroundColor style
            if (! hasClass(mytd) &&
                ! mytd.style.backgroundColor) {

              mytd.style.backgroundColor =
                even ? evenColor : oddColor;

            }
          }
        }
        // flip from odd to even, or vice-versa
        even =  ! even;
      }
    }
}
function init() {
	lis = document.getElementById("menu").getElementsByTagName("LI");
	if(lis) {
		for(j=0;j<lis.length;j++) {
			if(lis[j].className.indexOf("ebene1") == "0") {addEvent(lis[j], "mouseover", highliteHauptmenu);}
			else {
	 			if(lis[j].className.indexOf("ebene2") == "0") addEvent(lis[j], "mouseover", highliteFolgemenu);
				addEvent(lis[j], "mouseover", setMenuTimer);
			}
			addEvent(lis[j], "mouseout", setMenuTimer);
			addEvent(lis[j], "click", goToChildHref);
		}
		if(document.getElementsByTagName("TABLE") != null) {
			tables = document.getElementsByTagName("TABLE");
	     for(i=0;i<tables.length;i++) {
	        if(tables[i].className.search(/altTable/) >= 0) {
	          stripe(tables[i]);
	        }
	     }
	  }
  }
}
function openPopup(pic)
{
        window.open('/bild.php?pic=' + pic,'Bildansicht','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no');
}
window.onload = init;
timerHauptmenu = null;
