(function () {
   var $ = jQuery;

$(document).ready(setupMenu);

function setupMenu() {
   // Implement hovers
   $('.mainmenu_item > a').each(function () {
      this.subMenu = $('.submenu', this.parentNode);

      $(this).hover(
         MenuDropDown.displayMenu,
         function () {
            MenuDropDown.hideTimer = setTimeout(MenuDropDown.hideAll, 1000);
         }
      );

      this.subMenu.hover(
         function () {
            clearTimeout(MenuDropDown.hideTimer);
         },
         function () {
            MenuDropDown.hideTimer = setTimeout(MenuDropDown.hideAll, 1000);
         }
      )
   });
}

var MenuDropDown = new Object();

MenuDropDown.hideTimer = null;

MenuDropDown.displayMenu = function () {
   var menuitem = this;

   clearTimeout(MenuDropDown.hideTimer);
   MenuDropDown.hideAll();
   menuitem.subMenu.fadeIn(300);
}

MenuDropDown.hideAll = function () {
   $('.submenu').fadeOut(150);
}

})();
