var menuOn = false;
var menu2On = false;

var visLayer = null;
var parentMenu = null;
var timeoutID = null;

function hideParentMenu() {
  if (parentMenu != null) {
    var x = MM_findObj(parentMenu);
    x.src=x.oSrc;
    parentMenu = null;
  }
}
function showMenu() {
  var args=showMenu.arguments;
  if (args[0] == null) {
  	clearInterval(timeoutID);
	timeoutID = null;
    if (defLayer != null) {
	  MM_showHideLayers(defLayer, '', 'show');
    }
  }
  if (visLayer != null && visLayer != args[0] && visLayer != defLayer) {
	MM_showHideLayers(visLayer, '', 'hide');
	hideParentMenu();
  }
  if (args[0] != null && args[0] != defLayer && defLayer != null) {
	MM_showHideLayers(defLayer, '', 'hide');
  }
  if (args[0] != null) {
	MM_showHideLayers(args[0], '', 'show');
	menuOn=true;
  } else
	hideParentMenu();
  if (args[1] != null)
	parentMenu = args[1];
  visLayer = args[0];
}
function checkMenu() {
	if (menuOn == false && menu2On == false) {
		showMenu(null);
	}
}
function timeout() {
	if (timeoutID != null) return;
	timeoutID = setInterval('checkMenu()', 1000);
}
function menuOff() {
	menuOn=false;
	timeout();
}