function CMenuItem(text, link, target)
{
  this.Text = text;
  this.Link = link;
  this.Target = target;
}

function CMenu(title, id, width)
{
  this.Title = title;
  this.ID = id;
  this.Width = width;
  this.Menupoints = new Array();
  this.Data = new String("");

  this.Add = function (e)
  {
    this.Menupoints.push(e);
  }

  this.Init = function ()
  {
    this.Data = "<table width='100%' border=0 cellpadding=0 cellspacing=0>"+
      "<tr>"+
/*
      "<td colspan=3 onclick=\"undoMenu('"+ this.ID +"_head_sub')\" class=\"ctd\">&nbsp;</td>"+
      "</tr><tr>"+
      "<td onmouseover=\"undoMenu('"+ this.ID +"_head_sub')\" class=\"ctd\">&nbsp;</td>"+
*/
      "<td style=\"width:"+this.Width+"px;\">"+
      "<div class=menudiv style=\"cursor:hand;cursor:pointer;width:"+this.Width+"px;\" id=\""+ this.ID +"_head\" onclick=\"doMenu('"+ this.ID +"_head_sub')\">"+this.Title+"</div>"+
      "<div class=subMenuHide style=\"width:"+this.Width+"px;\" id=\""+ this.ID +"_head_sub\">";

    for(i=0;i<this.Menupoints.length;i++)
    {
      if(i>0)
      {
        this.Data += "<br>";
      }

      if(this.Menupoints[i].Link!=null)
      {
        this.Data += "&nbsp;&nbsp;<a class=\"menuItemLink\" href=\""+this.Menupoints[i].Link+"\"";
        if( this.Menupoints[i].Target!=null)
        {
          this.Data += " target=\""+this.Menupoints[i].Target+"\"";
        }
        this.Data += ">";
      }

      this.Data += this.Menupoints[i].Text;

      if(this.Menupoints[i].Link!=null)
      {
        this.Data += "</a>";
      }
    }

    this.Data += "</div>"+
      "</td>"+
      "<td class=\"ctdl\" onmouseover=\"undoMenu('"+ this.ID +"_head_sub')\">&nbsp;</td>"+
/*
      "</tr><tr>"+
      "<td class=\"ctd\" colspan=3 onclick=\"undoMenu('"+ this.ID +"_head_sub')\">&nbsp;</td>"+
*/
      "</tr>"+
      "</table>";
  }

  this.Show = function ()
  {
    var z;
    if((z=document.getElementById(this.ID))!=null)
    {
      z.innerHTML = this.Data;
    }
  }
}

var g_lastOpenedMenuID="";
var g_lastAutoClose=null;

function doMenu(id)
{
  undoMenu(g_lastOpenedMenuID);
  var z;
  if((z=document.getElementById(id)) != null)
  {
    z.className="subMenuShow";
    g_lastOpenedMenuID=id;
    if(g_lastAutoClose !=null)
      window.clearTimeout(g_lastAutoClose);
    g_lastAutoClose = window.setTimeout("undoMenu('"+id+"')", 30000);
  }
}

function undoMenu(id)
{
  var z;
  if((z=document.getElementById(id))!=null)
  {
    z.className="subMenuHide";
    if(g_lastOpenedMenuID == id && g_lastAutoClose != null)
      window.clearTimeout(g_lastAutoClose);
  }
}
