(function($) {
  var shouldHide = false;
  $("#top_menu li").live('click', function(){
    shouldHide = false;
    var $menu = $('#' + this.id.replace('header', 'menu')).first();
    var $active = $('#main .menu.active').first();
    var $active_button= $('#top_menu li.active').first();
    
    if (!$active[0] || $menu[0].id != $active[0].id){
      $active.removeClass('active');
      $active_button.removeClass('active');
      
      $menu.addClass('active');
      $(this).addClass('active');
      
      $menu.css('zIndex','2').slideDown(400, function(){
        $active.hide();
        $(this).css('zIndex','1');
        if (this.id == 'menu_home') {
          var location = $('#header_home a').attr('href');
          setTimeout(function(){window.location = location;}, 100);
        }
      });
    }
  });
  
  $("#top_menu li.active, #main .menu.active ul, #menu_home.active").live('mouseover', function(){
    shouldHide = false;
  });
  
  $("#top_menu li.active, #main .menu.active ul").live('mouseout', function(){
    if (this.id == 'header_home' || this.id == 'menu_home'){
      return;
    }
    shouldHide = true;
    setTimeout(function(){
      if (shouldHide){
        $("#top_menu li.active").removeClass('active');
        $("#main .menu.active").removeClass('active').slideUp(300);
      }
    }, 200);
  });
})(jQuery);
