function Menu(menu_name,parent_menu)
{
   this.name = menu_name;
   this.parent = parent_menu;
   this.over_menu = false;
   this.over_menu_div = false;
   this.active = false;
   this.children = new Array();
   if (parent_menu) parent_menu.children.push(this);
}

Menu.prototype.remove = function()
{
   if ((! this.over_menu) && (! this.over_menu_div)) {
      document.getElementById(this.name+'_menu').style.display = 'none';
      this.active = false;
      //if (this.parent) document.getElementById(this.name+'_menu_link').className = '';
   }
}

Menu.prototype.mouseover = function()
{
   this.over_menu = true;
   document.getElementById(this.name+'_menu').style.display = '';
   this.active = true;
}

Menu.prototype.activate = function()
{
   this.over_menu = true;
   alert(this.name);
   //document.getElementById(this.name+'_menu_link').className = 'sub_menu';
   document.getElementById(this.name+'_menu').style.display = '';
   this.active = true;
}

Menu.prototype.mouseout = function()
{
   this.over_menu = false;
   var menu = this;
   setTimeout(function() { menu.remove(); },0);
}

Menu.prototype.div_mouseover = function()
{
   this.over_menu_div = true;
   if (this.parent) this.parent.over_menu_div = false;
   //document.getElementById(this.name+'_menu_link').className = 'sub_menu';
}

Menu.prototype.div_mouseout = function()
{
   this.over_menu_div = false;
   var menu = this;
   if (this.parent) {
      setTimeout(function () {
         if ((! menu.parent.over_menu_div) && (! menu.over_menu_div)) {
            menu.over_menu = false;   menu.remove();
         }
      },0);
      setTimeout(function () {
         if ((! menu.parent.over_menu_div) && (! menu.over_menu_div)) {
            menu.parent.over_menu_div = false;   menu.parent.remove();
         }
      },0);
   }
   else if (this.children.length > 0) {
      setTimeout(function () {
         if (! menu.over_menu_div) {
            var over_child_div = false;
            for (var index in menu.children) {
               if (menu.children[index].over_menu_div) over_child_div = true;
            }
            if (! over_child_div) {
               menu.over_menu_div = false;   menu.remove();
            }
         }
      },0);
      var child_active = false;
      for (var index in this.children) {
         if (this.children[index].active) child_active = true;
      }
      if (child_active)
         setTimeout(function () {
            if (! menu.over_menu_div) {
               for (var index in menu.children) {
                  if (menu.children[index].active &&
                      (! menu.children[index].over_menu_div)) {
                     menu.children[index].over_menu = false;
                     menu.children[index].remove();
                  }
               }
            }
         },0);
   }
   else setTimeout(function() { menu.remove(); },100);
   //document.getElementById(this.name+'_menu_link').className = 'link';
}

Menu.prototype.sub_mouseover = function(child_name)
{
   for (var index in this.children) {
      if (this.children[index].name == child_name) {
         if (! this.children[index].active) this.children[index].activate();
      }
      else if (this.children[index].active) {
         this.children[index].over_menu = false;
         this.children[index].over_menu_div = false;
         this.children[index].remove();
      }
   }
}

var about_menu = new Menu('about',about_menu);
var museum_shop_menu = new Menu('museum_shop',museum_shop_menu);
var exhibitions_menu = new Menu('exhibitions',exhibitions_menu);
var Education_menu = new Menu('Education',Education_menu);
var Membership_menu = new Menu('Membership',Membership_menu);
var support_ohr_menu = new Menu('support_ohr',support_ohr_menu);
var Contact_Us_menu = new Menu('Contact_Us',Contact_Us_menu);
var Capital_campaign_menu = new Menu('Capital_campaign',Capital_campaign_menu);

var jewelry_menu = new Menu('jewelry',jewelry_menu);
var pottery_menu = new Menu('pottery',pottery_menu);
var books_menu = new Menu('books',books_menu);
var posters_menu = new Menu('posters',posters_menu);
var membership_menu = new Menu('membership',membership_menu);
var eventtickets_menu = new Menu('eventtickets',eventtickets_menu);
