
jQuery(document).ready(function() {
   function addMega() {
       jQuery(this).find(".hovering").removeClass("hovering");
      jQuery(this).addClass("hovering");
      addImage(this);
    }
    function removeMega() {
      jQuery(this).removeClass("hovering");
      removeImage(this);
    }

   function noOp() {};

   function addSubMega() {
     jQuery("li.submega").removeClass("hovering");
     jQuery(this).addClass("hovering");
     var menu_offset=jQuery(this).closest("ul.menu").offset();
     var submenu_offset=jQuery(this).closest("ul.submenu").offset();
     var offset = submenu_offset.top - menu_offset.top;
     var submenu_correction = jQuery(this).closest("ul.submenu").position().top;
     var total_offset = offset - submenu_correction;
     var width=jQuery(this).closest("ul.submenu").width();
     var this_offset=jQuery(this).offset();
     var this_pos=jQuery(this).position();
     if (jQuery.browser.msie) {
       var new_top = this_pos.top * -1;
     } else {
         var new_top = this_pos.top * -1 - total_offset;
     }
     addImage(this);
     jQuery(this).find("div").css('left',width);
     jQuery(this).find("div").css('top',new_top);
   }

   function addNoMega() {
     addImage(this);
     jQuery("li.submega").removeClass("hovering");
   }

   function removeSubMega() {
     jQuery("li.submega").removeClass("hovering");
     removeImage(this);
   }

   function addImage(o) {
     var i = jQuery("#megatableimage");
     var src = jQuery(o).children("img").attr('src');
     if (src) {
       jQuery(i).attr('src',src);
       jQuery(i).css('display','block');
       jQuery(i).css('position','relative');
       var x=jQuery(o).closest("ul.menu").offset();
       var x2=jQuery(o).closest("ul.submenu").height();
       var x3= x.top - x2 + 70;
       //       jQuery(i).css('top',x3);
       jQuery(i).css('left',350);
     }
   }

   function hoverAddImage() {
     jQuery(this).addClass("hovering");
     var width=jQuery(this).closest("ul.submenu").width();
     width = width + jQuery(this).closest("table").width();
     addImage(this);
   }

   function removeImage(o) {
     jQuery(o).removeClass("hovering");
     jQuery(o).closest("ul.submenu").children("img").attr('src','/media/Site Files/Merchandising Files/1.gif');
     jQuery(o).closest("ul.submenu").children("img").hide();
   }

   function hoverRemoveImage() {
     removeImage(this);
   }

   var menuConfig = {
      interval: 250,
      sensitivity: 10,
      over: addMega,
      timout: 250,
      out: removeMega
    };

    var submenuConfig = {
      interval: 250,
      sensitivity: 10,
      over: addSubMega,
      timout: 250,
      out: noOp
    };

    var nomenuConfig = {
      interval: 250,
      sensitivity: 10,
      over: addNoMega,
      timout: 250,
      out: removeSubMega
    };

    var menuTableConfig = {
      interval: 100,
      sensitivity: 10,
      over: hoverAddImage,
      timeout: 100,
      out: hoverRemoveImage
    };

    jQuery("li.mega").hoverIntent(menuConfig);
    jQuery("li.submega").hoverIntent(submenuConfig);
    jQuery("li.nomega").hoverIntent(nomenuConfig);
    jQuery("table.megatable>tbody>tr>td>h3").hoverIntent(menuTableConfig);
    jQuery("table.megatable>tbody>tr>td>ul>li").hoverIntent(menuTableConfig);

});

