// MSIE version

function doNothing() { return true; }
window.onerror = doNothing;
var theContent = new Array();
var lastPopped = new Array();
var maxLevel = 2;

function buildContent(subMenu,level)
 {
  var nextLevel = (level + 1);
  theContent[subMenu] = menustart;
  for (var i in menus[subMenu])
   {
    if (menus[subMenu][i][0]=='-')
     {
      theContent[subMenu] += '<tr onMouseOver="hideLayer(' + nextLevel + ');"><td colspan=2 align=center submenu=yes>' + separator + '</td></tr>';
     }
    else
     {
      var popup = (menus[subMenu][i][2]) ? 'popUp(\'' + menus[subMenu][i][2] + '\',' + nextLevel + ',event);' : (nextLevel<=maxLevel) ? 'hideLayer(' + nextLevel + ');' : '';
      theContent[subMenu] += '<tr onClick="location.href=\'' + menus[subMenu][i][1] + '\';" onMouseOver="' + popup + 'itemOver(this);" onMouseOut="itemOut(this);">';
      theContent[subMenu] += '<td valign=top class=nav width="100%">' + menus[subMenu][i][0];
      if (menus[subMenu][i][2])
       {
        theContent[subMenu] += '</td><td submenu=yes align=right><img submenu=yes src="' + subIndicator + '" width=5 height=5 border=0 vspace=4 hspace=4 alt=""></td>';
        buildContent(menus[subMenu][i][2],nextLevel);
       }
      else
       {
        theContent[subMenu] += '</td><td submenu=yes></td>';
       }
        theContent[subMenu] += '</tr>';
     }
   }
  theContent[subMenu] += menuend;
 }

function buildMenu(id)
 {
  var nextLevel = 1;
  var senseRow = '<tr><td colspan=2 onMouseOver="hideLayer(1);"></td></tr>';
  var theMenu = mainmenuStart + senseRow;
  for(var i in menus[id])
   {
    if (menus[id][i][0]=="-")
     {
      theMenu += '<tr onMouseOver="hideLayer(' + nextLevel + ');"><td colspan=2 align=center>' + mainseparator + '</td></tr>';
     }
    else
     {
      var popup = (menus[id][i][2]) ? 'popUp(' + menus[id][i][2] + ',' + nextLevel + ',event);' : 'hideLayer(' + nextLevel + ');';
      theMenu += '<tr onClick="location.href=\'' + menus[id][i][1] + '\';" onMouseOver="' + popup + 'itemOver(this);" onMouseOut="itemOut(this);">';
      if (menus[id][i][2])
       {
        theMenu += '<td class=nav>';
        theMenu += menus[id][i][0];
        theMenu += '</td><td valign=middle>';
        theMenu += '<img src="' + subIndicator + '" align=right width=5 height=5 border=0 vspace=4 hspace=4 alt=""></td>';
        buildContent(menus[id][i][2],nextLevel);
       }
      else
       {
        theMenu += '<td colspan=2 class=nav>';
        theMenu += menus[id][i][0] + '</td>';
       }
      theMenu += '</tr>';
     }
   }
  theMenu += senseRow + mainmenuEnd;
  document.write(theMenu);
 }

function itemOver(tr)
 {
  tr.style.backgroundColor = bgColorHover;
  tr.style.cursor = 'hand';
 }

function itemOut(tr)
 {
  tr.style.backgroundColor = bgColorNormal;
 }

function getRealTop(imgElem)
 {
  yPos = eval(imgElem).offsetTop;
  tempEl = eval(imgElem).offsetParent;
  while (tempEl != null)
   {
    yPos += tempEl.offsetTop;
    tempEl = tempEl.offsetParent;
   }
  return yPos;
 }





function popUp(subMenu,level,e)
 {
  if (level<=maxLevel)
   {
    var theLayer = document.all('level' + level);
    if (lastPopped[level] == subMenu)
     {
      if (theLayer.style.visibility == 'visible') return;
     }
    else
     {
      theLayer.style.top = (navigator.userAgent.indexOf("Mac")==-1) ? getRealTop(e.toElement) : e.y - (e.y % 8);	
      theLayer.style.left = lefts[level];
      theLayer.innerHTML = theContent[subMenu];
      lastPopped[level] = subMenu;
     }
    showLayer(level,1)
   }
  else
   {
    hideLayer(level);
   }
 }




function hideLayer(level)
 {
  var nextLevel = (level + 1);
  if (level<maxLevel && document.all('level' + nextLevel)) hideLayer(nextLevel);
  showLayer(level,0);
 }

function showLayer(level,show)
 {
  if (document.all('level' + level)) document.all('level' + level).style.visibility = (show) ? "visible" : "hidden";
  if (level<maxLevel)
   {
    level++;
    if (document.all('level' + level)) hideLayer(level);
   }
 }