var Menu = 
{
  activeSubmenu : null,
  shownLinks : new Object(),
  
  Show : function(linkElement)
  {
    var cat = $(linkElement).id.substring(3);  
    var pos = $(linkElement).cumulativeOffset();    
    var minWidth = $(linkElement).getDimensions().width - 2;
  
    if ($('submenu_' + cat))
    {
     if (Menu.activeSubmenu != null)
      {
        $('tm_' + Menu.activeSubmenu.id.substring(8)).removeClassName('tm tm_' + Menu.activeSubmenu.id.substring(8));
        
        Menu.activeSubmenu.hide();
        Menu.activeSubmenu = null;
      };
      var submenu = $('submenu_' + cat);
      submenu.setStyle({ display : 'block', left: pos.left + 'px', top: pos.top + $(linkElement).getHeight() - 1 + 'px'});
      var subWidth = $(submenu).getDimensions().width; 
      if (subWidth < minWidth) 
      {
        submenu.setStyle({ width : minWidth + 'px' });
      }  
      $(linkElement).addClassName('tm tm_' + cat);
      Menu.activeSubmenu = submenu;
    }
    
    document.onclick=Menu.Hide;
  },
  
  Hide : function()
  {
    if (Menu.activeSubmenu != null)
    {
      $('tm_' + Menu.activeSubmenu.id.substring(8)).removeClassName('tm tm_' + Menu.activeSubmenu.id.substring(8));
      Menu.activeSubmenu.hide();
      Menu.activeSubmenu = null;
    }
  }
};    

