var MS_SEPARATOR  = 0x01
var MS_SELECTED   = 0x02
var items         = MENUITEMS;

function MenuGetObject ( id )
{
  return document.getElementById ? document.getElementById(id) : document.all[id];
}

function  MenuDraw ( szSel )
{
  document.write ( "<table class=menu cellspacing=\"0\">" );
  for ( i = 0; i < items.length; i++ )
    for ( j = 0; j < items[i].subitems.length; j++ )
      if ( items[i].subitems[j].id == szSel )
      {
        items[i].style |= MS_SELECTED;
        items[i].subitems[j].style |= MS_SELECTED;
      }
  
  for ( i = 0; i < items.length; i++ )
  {
    MenuDrawCaption ( i );
    for ( j = 0; j < items[i].subitems.length; j++ )
    {
      MenuDrawItem ( i, j );
      if ( ! ( items[i].style & MS_SELECTED ) )
        MenuGetObject(items[i].subitems[j].id+"r").style.display = "none";
    }
  }
  document.write ( "</table>" );
}

function MenuDrawCaption ( i )
{
  simg = "<img id=\"" + items[i].id + "i\" border=\"0\" src=\"images/";
  if ( items[i].subitems.length > 0 )
  {
    if ( items[i].style & MS_SELECTED )
      simg += "bookopen.gif";
    else
      simg += "bookclose.gif";
  }
  else
  {
    if ( items[i].icon != "" )
      simg += items[i].icon;
    else
      simg += "empty16.gif";
  }
  simg += "\" align=\"absmiddle\" width=\"16\" height=\"16\">&nbsp;";
  s = "<tr><td id=\"" + items[i].id + "\" class=caption onclick=\"MenuExpand(this);";
  if ( items[i].ref != "" )
    s += "\">" + simg + "<a " + items[i].ref + " onmouseover=\"MenuShowStatus(this); return true;\">";
  else
    s += " ;return false;\">" + simg + "<a href=\"#\" onmouseover=\"MenuShowStatus(this); return true;\">";
  s += items[i].text + "</a></td></tr>";
  document.write ( s );
}

function MenuDrawItem ( i, j )
{
  str = "<tr id=\"" + items[i].subitems[j].id + "r\">";
  if ( items[i].subitems[j].style & MS_SEPARATOR == MS_SEPARATOR )
  {
    document.write ( str + "<td id=\"" + items[i].subitems[j].id + "\" class=separator><br></td></tr>" );
  }
  else
  {
    if ( items[i].subitems[j].style & MS_SELECTED )
    {
      document.write ( str + "<td id=\"" + items[i].subitems[j].id + "\" class=selected>" + items[i].subitems[j].text + "</td></tr>" );
    }
    else
    {
      s = str + "<td id=\"" + items[i].subitems[j].id + "\" class=item onmouseover=\"MenuHilite(this)\" onmouseout=\"MenuUnhilite(this)\">";
      if ( items[i].subitems[j].ref != "" )
        s += "<a " + items[i].subitems[j].ref + " onmouseover=\"MenuShowStatus(this); return true;\">";
      s += items[i].subitems[j].text;
      if ( items[i].subitems[j].ref != "" )
        s += "</a>";
      s += "</td></tr>";
      document.write ( s );
    }
  }
}

function MenuHilite ( mitem )
{
  for ( i = 0; i < items.length; i++ )
    for ( j = 0; j < items[i].subitems.length; j++ )
      if ( items[i].subitems[j].id == mitem.id )
        if ( items[i].subitems[j].ref != "" )
        {
          window.status = items[i].subitems[j].status;
          mitem.style.background = "#F0F0FF";
          return;
        }
}

function MenuUnhilite ( mitem )
{
  mitem.style.background = "none";
  if ( mitem.style.background != "none" )
    mitem.style.background = "";
  window.status = "";
}

function MenuShowStatus ( mitem )
{
  for ( i = 0; i < items.length; i++ )
  {
    for ( j = 0; j < items[i].subitems.length; j++ )
    {
      if ( items[i].subitems[j].id == mitem.id )
      {
        window.status = items[i].subitems[j].status;
        return;
      }
    }
  }
  window.status = "Nyke Audio Center";
}

function MenuExpand ( mitem )
{
  for ( i = 0; i < items.length; i++ )
  {
    if ( items[i].id == mitem.id )
    {
      if ( items[i].subitems.length == 0 )
        return;
      break;
    }
  }
  
  for ( i = 0; i < items.length; i++ )
  {
    for ( j = 0; j < items[i].subitems.length; j++ )
    {
      idm = items[i].subitems[j].id;      
      ob = MenuGetObject ( idm );
      if ( items[i].id == mitem.id )
        MenuGetObject(idm+"r").style.display = "";
      else
        MenuGetObject(idm+"r").style.display = "none";      
    }
    if ( items[i].subitems.length != 0 )
    {
      if ( items[i].id == mitem.id )
      {
        items[i].style |= MS_SELECTED;
        MenuGetObject(items[i].id+"i").src = "images/bookopen.gif";
      }
      else
      {
        items[i].style &= ~MS_SELECTED;
        MenuGetObject(items[i].id+"i").src = "images/bookclose.gif";
      }
    }
  }
}

function MenuDrawTitle()
{
  for ( i = 0; i < items.length; i++ )
    for ( j = 0; j < items[i].subitems.length; j++ )
      if ( items[i].subitems[j].style & MS_SELECTED )
      {
        document.write ( items[i].text + " / " + items[i].subitems[j].text );
        return;
      }
}
