(function($){$.widget("ui.flyout",{options:{hover:{timeout:200},subMenuPrefix:'flyOutMenu-',openerMenuPrefix:'globalMenuItem-'},_create:function(){var self=this;self.flyOutData=$('#flyOutData');self.sub=self.flyOutData.find('.sub');self.sub.hide().bind("mouseover",{self:self},this.flyOutOver).bind("mouseout",{self:self},this.flyOutOut);this.element.children('li').each(function(){$(this).hoverIntent({over:function(){self.megaHoverOver(this)},out:function(){self.megaHoverOut(this)},sensitivity:2,interval:100,timeout:self.options.hover.timeout})})},megaHoverOver:function(element){var self=this;$(element).addClass('subOpen');var subMenu=this.getSubMenu($(element));if(subMenu.length)subMenu.stop().css("height","auto").show().position({of:self.flyOutData,my:"center top",at:"center bottom",offset:"0 0",collision:"none"}).hide().slideDown(600)},megaHoverOut:function(element){$(element).removeClass('subOpen');var subMenu=this.getSubMenu($(element));if(subMenu.length)subMenu.stop().fadeOut(200)},getSubMenu:function(el){var menuIdentifier=el.attr('id'),menuId=menuIdentifier.substring(menuIdentifier.lastIndexOf('-')+1),subMenuIdentifier=this.options.subMenuPrefix+menuId,subMenu=$("#"+subMenuIdentifier);return subMenu},getSubOpener:function(el){var menuIdentifier=el.attr('id'),menuId=menuIdentifier.substring(menuIdentifier.lastIndexOf('-')+1),openerMenuIdentifier=this.options.openerMenuPrefix+menuId,openerMenu=$("#"+openerMenuIdentifier);return openerMenu},flyOutOver:function(event){var openerMenu=event.data.self.getSubOpener($(this));if(openerMenu)openerMenu.trigger("mouseover")},flyOutOut:function(event){var openerMenu=event.data.self.getSubOpener($(this));if(openerMenu)openerMenu.trigger("mouseout")}})})(jQuery);
