var ArrowEast = 'bosch_div_files/arrow-east.gif';
var ArrowSouth = 'bosch_div_files/arrow-south.gif';
var CurMenuItemID = '';

// Konstruktor der Objekt-Klasse TMenu
function TMenu (ID, Caption, MenuItems, URL, TagText) {

	this.ID = ID;
	this.Caption = Caption;
	this.MenuItems = MenuItems;
	if (URL && (URL.length > 1)) {
		if (URL.indexOf ("http:") > -1) {
			this.URL = URL;
		} else {
			this.URL = Path + URL;
		}
	}
	this.TagText = TagText;

} // function TMenu


function WriteMenu (MenuStartNode, IndentCount) {

	var MenuItemsCount, MenuArrow;
	var i;
	var Code = '';

	if (MenuStartNode.MenuItems != null) {
		MenuItemsCount = MenuStartNode.MenuItems.length;
		MenuArrow = ArrowSouth;
	} else {
		MenuItemsCount = 0;
		MenuArrow = ArrowEast;
	}

	if (IndentCount > 0) {
		Code += '<div id="menu' + MenuStartNode.ID + '" class="menu' + IndentCount + '">'
			+ '<table border="0" width="174" cellspacing="0" cellpadding="0">'
			+ '<tr><td><img src="' + WebRoot + '/shared/dot-white.gif" width="174" height="1" border="0" alt=""></td></tr>\n'
			+ '<tr><td><p class="menu' + IndentCount + '">'
			+ '<a href="#" onclick="return MenuClick (\'' + MenuStartNode.ID + '\');" '
			+ 'onmouseover="MenuHighlight (\'' + MenuStartNode.ID + '\', true);" '
			+ 'onmouseout="MenuHighlight (\'' + MenuStartNode.ID + '\', false);" '
			+ 'class="navi">'
			+ '<img src="' + ArrowEast + '" id="arrow' + MenuStartNode.ID + '" border="0" width="10" height="12" alt="">'
			+ MenuStartNode.Caption + '</a><br>'
			+ '<img src="' + WebRoot + '/shared/dot-clear.gif" width="1" height="1" border="0" alt=""></p></td></tr>\n'
			+ '</table></div>';
// ! onclick-Event bei Blatt-Kategorien tilgen !
		document.write (Code);

	}

	for (i = 0; i < MenuItemsCount; i++) {
		WriteMenu (MenuStartNode.MenuItems[i], IndentCount + 1);
	}

} // function WriteMenu


function PageStartup (MenuID) {

	CurMenuItemID = MenuID;
	MenuClick (MenuID);

} // function PageStartup


function MenuClick (MenuID) {

	if (document.all && (navigator.userAgent.indexOf ('Opera') < 0) ) {
		var DocMenuItemTD = document.all['menutd' + MenuID];
		if (DocMenuItemTD != null) {
			MenuOpen (Menu, MenuID);
			DocMenuItemTD.style.backgroundColor = BGColorSelected;
			return false;
		}
	} else {
		return true;
	}

} // function MenuClick


function MenuOpen (CurMenuNode, TargetMenuNodeID) {

	var CurMenuItemsCount, i;
	var TargetMenuNodeFound = 0;
	CurMenuItemID = TargetMenuNodeID;
	
	if (CurMenuNode.MenuItems != null) {
		CurMenuItemsCount = CurMenuNode.MenuItems.length;
	} else {
		CurMenuItemsCount = 0;
	}

	for (i = 0; i < CurMenuItemsCount; i++) {
		TargetMenuNodeFound += MenuOpen (CurMenuNode.MenuItems[i], TargetMenuNodeID);
		if (CurMenuNode.ID == TargetMenuNodeID) TouchMenuItem (CurMenuNode.MenuItems[i], true, false); // open child nodes of target node
	}

	for (i = 0; i < CurMenuItemsCount; i++) {
		if (TargetMenuNodeFound ) TouchMenuItem (CurMenuNode.MenuItems[i], true); // open siblings nodes of target node
	}

	if (TargetMenuNodeFound || (CurMenuNode.ID == TargetMenuNodeID) ) {
		TouchMenuItem (CurMenuNode, true, CurMenuItemsCount > 0);
		return true;
	} else {
		TouchMenuItem (CurMenuNode, false, false);
		return false;
	}

} // function MenuOpen


function TouchMenuItem (MenuItem, Visible, ArrowDown) {

	var DocMenuItem = document.all['menu' + MenuItem.ID];
	var DocMenuItemTD = document.all['menutd' + MenuItem.ID];
	var DocMenuArrow = document.images['arrow' + MenuItem.ID];
	if (DocMenuItem != null) {
		if (Visible) {
			// DocMenuItem.style.visibility = 'visible';
			DocMenuItem.style.display = "block";
		} else {
			// DocMenuItem.style.visibility = 'hidden';
			DocMenuItem.style.display = "none";
		}
		if (ArrowDown != null) {
			DocMenuArrow.src = ArrowDown ? ArrowSouth : ArrowEast;
		}
		DocMenuItemTD.style.backgroundColor = BGColorDefault;
	}

} // function TouchMenuItem


function MenuHighlight (MenuItemID, Highlight) {

	if (document.all) {
		
		var DocMenuItemTD = eval ('document.all.menutd' + MenuItemID);
		
		var Color = Highlight ? BGColorHighlight : BGColorDefault;
		if (MenuItemID != CurMenuItemID && DocMenuItemTD.className != "highlighted") DocMenuItemTD.style.backgroundColor = Color;
	}

} // function MenuHighlight

