var navMenu = {
  
up: function (menuNumber) {
	var secmenu = document.getElementById('menuS' + menuNumber);
	if (secmenu != null) {
		var coors = this.findPos(document.getElementById('navMenuTable'));		// Get left & top coordinates of navMenuTable
		var g = coors[1];														// Get top coordinate
		g += parseInt(document.getElementById("navMenuTable").offsetHeight);	// Add height of navMenuTable
		document.getElementById('menuS' + menuNumber).style.top = (g - 1) + "px";		// Set top value of submenu

		coors = this.findPos(document.getElementById("navMenuTable").getElementsByTagName("td")[menuNumber]);
		g = coors[0];																							// Get left coordinate
		g += (document.getElementById("navMenuTable").getElementsByTagName("td")[menuNumber].offsetWidth/2);	// Middle of cell containing menu button link
		g -= (document.getElementById('menuS' + menuNumber).offsetWidth/2);												// Subtract half the width of menu box to center it
		
		if ((g + 22 + document.getElementById('menuS' + menuNumber).offsetWidth)>document.body.offsetWidth) {
			// Too wide to fit on screen, so light the right side of the menu with the right side of the menu button link
			g = coors[0] - (document.getElementById('menuS' + menuNumber).offsetWidth - document.getElementById("navMenuTable").getElementsByTagName("td")[menuNumber].offsetWidth);
		}

		document.getElementById('menuS' + menuNumber).style.left = g + "px";		// Set top value of submenu



		var a = document.getElementById("navMenuTable").getElementsByTagName("td").length-1;
		var b = 0;
		var c = 0;
		for (i=0;i<=a;i++) {
			this.down(i);
		}
		document.getElementById('menuS' + menuNumber).className = 'navMenu navMenuUp';
	}
  },
  
  down: function (menuNumber) {
	var secmenu = document.getElementById('menuS' + menuNumber);
	if (secmenu != null) {
	    document.getElementById('menuS' + menuNumber).className = 'navMenu navMenuDown';
	}
  },
  
  subup: function (parentNumber,subNumber) {
	var submenu = document.getElementById('menuSub' + parentNumber + subNumber);
	if (submenu != null) {
		navMenu.up(parentNumber);	// Make sure parent menu is still visible
		
		var f = parseInt(document.getElementById('menuS' + parentNumber).style.left);		// Get left coordinate of parent menu
		f = f + document.getElementById('menuS' + parentNumber).offsetWidth;	// Add width of parent menu
		f = f - 2;	// Make the menus overlap a bit
		document.getElementById('menuSub' + parentNumber + subNumber).style.left = f + "px";

		var g = parseInt(document.getElementById('menuS' + parentNumber).style.top);		// Get top coordinate of parent menu
		g = g + document.getElementById('menuS' + parentNumber).getElementsByTagName("td")[subNumber].offsetTop;		// Get top coordinate of parent menu button
		g = g + 2;	// Make the menus overlap a bit
		document.getElementById('menuSub' + parentNumber + subNumber).style.top = g + "px";

		document.getElementById('menuSub' + parentNumber + subNumber).className = 'navSub navSubUp';
	}
	document.getElementById('menuS' + parentNumber).getElementsByTagName("td")[subNumber].className = 'sectionbuttons darkbutton';
  },
  
  subdown: function (parentNumber,subNumber) {
	var submenu = document.getElementById('menuSub' + parentNumber + subNumber);
	if (submenu != null) {
		navMenu.down(parentNumber);		// Close the parent menu as well
		document.getElementById('menuSub' + parentNumber + subNumber).className = 'navSub navSubDown';
	}
	document.getElementById('menuS' + parentNumber).getElementsByTagName("td")[subNumber].className = 'sectionbuttons';
  },
  
  subup2: function (parentNumber,subNumber,sub2Number) {
	document.getElementById('menuSub' + parentNumber + subNumber).getElementsByTagName("td")[sub2Number].className = 'sectionbuttons darkbutton';
  },
  
  subdown2: function (parentNumber,subNumber,sub2Number) {
	document.getElementById('menuSub' + parentNumber + subNumber).getElementsByTagName("td")[sub2Number].className = 'sectionbuttons';
  },

  findPos: function (obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		do {
			curleft += obj.offsetLeft;
			curtop += obj.offsetTop;
		} while (obj = obj.offsetParent);
	}
	return [curleft,curtop];
  }
};

