function addMenuEvent() {
	// attach main menu events
	var menu = document.getElementById("menu");
	var rows = menu.childNodes[0].childNodes;

	for (i = 0; i < rows.length; i++)
	{
		var objImg = rows[i].childNodes[0].childNodes[0].childNodes[0];

		objImg.onmouseover = menuMouseOver;
		objImg.onmouseout = menuMouseOut;
	}
	var menuWithSubmenu = getSubmenuArray();

	for (i=0; i < menuWithSubmenu.length; i++)
	{
		var menuName = menuWithSubmenu[i];
		var objMenu = document.getElementById(menuName);
		if (objMenu != null)
			objMenu.onclick = menuClick;

		// attach submenu events;
		var submenuName = menuName + "_submenu";
		var objSubmenu = document.getElementById(submenuName);
		var subRows = objSubmenu.childNodes[0].childNodes;

		for (j=0; j< subRows.length; j++)
		{
			objImg = subRows[j].childNodes[0].childNodes[0].childNodes[0];
			if (objImg != null) {
				objImg.onmouseover = menuMouseOver;
				objImg.onmouseout = menuMouseOut;
			}

			// if that subMenu get another level of navigation
			var subSubMenu = subRows[j].childNodes[0].childNodes[1];
			if (subSubMenu != null) {
				var itemName = subRows[j].childNodes[0].childNodes[0].id;
				var objItem = document.getElementById(itemName);

				if (objItem != null) {
					objItem.onclick = menuClick;
				}

				// attach sub-submenu events;
				submenuName = itemName + "_submenu";

				var objSubsubmenu = document.getElementById(submenuName);
				var subSubRows = objSubsubmenu.childNodes[0].childNodes;

				for (k=0; k< subSubRows.length; k++)
				{
					objImg = subSubRows[k].childNodes[0].childNodes[0].childNodes[0];
					if (objImg != null) {
						objImg.onmouseover = menuMouseOver;
						objImg.onmouseout = menuMouseOut;
					}
				}
			}
		}
	}
}

function getSubmenuArray() {
	var submenuArray = new Array(
		"about",
		"members",
		"support"
	)

	return submenuArray;
}

function menuMouseOver() {
	swapImage(this);
}

function menuMouseOut() {
	revertImage(this);
}

function menuClick() {
	var subMenuId = this.id + "_submenu";
	var objMenu = document.getElementById(subMenuId);
	if (objMenu != null)
		toggleMenu(objMenu);

	return false;
}

function swapImage(objImg)
{
	var imageOnSuffix = "_on";
	var imagePath = objImg.src;

	// retrieves the image name only
	var index1 = imagePath.lastIndexOf('/');
	var imageFilename = imagePath.substring(index1 + 1, imagePath.length);
	var pathName = imagePath.substring(0, index1 + 1);

	var index2 = imageFilename.indexOf('.');
	var imageFilenameOnly = imageFilename.substring(0, index2);
	var extension = imageFilename.substring(index2, imageFilename.length);

	// set the new filename
	var newFilename = imageFilenameOnly + imageOnSuffix;
	var newFilePath = pathName + newFilename + extension;

	// set the image object to the new file path
	objImg.src = newFilePath;
}

function revertImage(objImg)
{
	var imageOnSuffix = "_on";
	var imagePath = objImg.src;

	// retrieves the image name only
	var index1 = imagePath.lastIndexOf('/');
	var imageFilename = imagePath.substring(index1 + 1, imagePath.length);
	var pathName = imagePath.substring(0, index1 + 1);

	var index2 = imageFilename.indexOf('.');
	var imageFilenameOnly = imageFilename.substring(0, index2);
	var extension = imageFilename.substring(index2, imageFilename.length);

	var index3 = imageFilenameOnly.indexOf('_on');
	var oldFilename = imageFilenameOnly.substring(0, index3);
	var oldFilePath = pathName + oldFilename + extension;

	// set the image object back to the old file path
	objImg.src = oldFilePath;
}

function toggleMenu(objMenu) {
	var curDisplay = objMenu.style.display;

	if (curDisplay != 'inline')
		objMenu.style.display = 'inline';
	else
		objMenu.style.display = 'none';

	return false;
}