	// the menu database stores all of the data necessary for performing
	// button rollovers, if the buttons have menus attached, what DOM
	// objects are affected when using the menus
	var aMenuDB = new Array();

	aMenuDB[0] = new Object();
	aMenuDB[0].bHasMenu = 1;
	
	aMenuDB[1] = new Object();
	aMenuDB[1].bHasMenu = 1;
	
	aMenuDB[2] = new Object();
	aMenuDB[2].bHasMenu = 1;

	var active_menu = -1;
	var def_menu = -1;
	var num_menus = 3; 


// ---------------------------------------------------------------------------
	function menu_on(_idx){
		// update which menu item is currently active
		active_menu = _idx;

		// perform the button rollover
		//aMenuDB[_idx].dAnchorObj.src = aMenuDB[_idx].dButtonImgOn.src;

		// if this anchor has a menu attached, position it, and display it
		if(aMenuDB[_idx].bHasMenu){
			// get the anchors position and dimensions
			var jAnchorCoords = get_abs_geometry(aMenuDB[_idx].dAnchorObj);
			// position and display the menu

			with(aMenuDB[_idx].dMenuObj.style){
				display = '';
				top = (jAnchorCoords.y + 18) + 'px';
				left = (jAnchorCoords.x + jAnchorCoords.w - 79) + 'px';
				
			}

		}
	}
// ---------------------------------------------------------------------------
	function menu_off(_idx){
		// set no menus currently active
		active_menu = -1;
		// perform the button rolloff
		if(_idx != def_menu){
			//aMenuDB[_idx].dAnchorObj.src = aMenuDB[_idx].dButtonImgOff.src;
		}
		// check whether the menu should be hidden
		setTimeout('if(active_menu != '+_idx+'){ hide_menu('+_idx+'); reset_menu(); }', 10);
	}
// ---------------------------------------------------------------------------
	function hide_menu(_idx){
		// hide the menu
		aMenuDB[_idx].dMenuObj.style.display = 'none';
	}
// ---------------------------------------------------------------------------
	function init_menu(){
		// update our menu database with the menu and anchor DOM object
		for(var i = 0; i < num_menus; i++){
			aMenuDB[i].dAnchorObj = document.getElementById('menu_anchor_'+i);
			aMenuDB[i].dMenuObj = document.getElementById('menu_'+i);
		}
	}
// ---------------------------------------------------------------------------
	function reset_menu(){
		if(def_menu >= 0){
			aMenuDB[def_menu].dAnchorObj.src = aMenuDB[def_menu].dButtonImgOn.src;
		}
	}
// ---------------------------------------------------------------------------

