(function(C){function A(F,E,D){this._init(F,E,D)}C.extend(A.prototype,{_init:function(F,D,G){var E=this;E.url=D;E.menuajax=G;E.btn=C(F);E.openCallback=function(){if(E.timCl){clearTimeout(E.timCl);E.timCl=0}else{E.menuajax.open(E)}return false};E.closeCallback=function(){if(!E.timCl){E.timCl=setTimeout(function(){E.close();E.timCl=0},300)}return false};E.btn.mouseenter(E.openCallback);E.btn.mouseleave(E.closeCallback)},open:function(){var D=this;if(!D.act){D.act=1;if(D.elem){D.elem.stop(true,true);D._adjust(C(document).width());D.elem.fadeIn()}else{D._load()}}},_adjust:function(E){var D=this;if(D.width){var F=D.btn.offset().left;if(F+D.width>E){D.elem.css("left",-(F+D.width-E+20))}else{D.elem.css("left",0)}}},_adjustContent:function(D){var F=C(document).width();var E=this;E.elem.removeClass("menu-loading").html(D);E.width=E.elem.width();E._adjust(F)},_load:function(){var D=this;D.hook=C("<span></span>").css({"position":"absolute","margin-top":C(D.btn).height()}).insertBefore(D.btn);D.elem=C("<div></div>").hide().css("position","absolute").addClass("menu-loading").appendTo(D.hook).fadeIn();D.elem.mouseenter(D.openCallback);D.elem.mouseleave(D.closeCallback);if(typeof D.url==="string"){C.ajax({url:D.url,type:"GET",dataType:"html",success:function(E){D.elem.html(E);D._adjustContent()},error:D.closeCallback})}else{D.elem.append(D.url.show().detach());D._adjustContent()}},close:function(){var D=this;if(D.act&&D.elem){D.act=0;D.elem.stop(true,true).fadeOut()}}});function B(D,E){this._init(D,E)}C.extend(B.prototype,{_init:function(D,E){var F=this;F.items=[];C("a.item-menu",D).each(function(H,G){if(E[H]){F.items.push(new A(G,E[H],F))}})},_closeAll:function(D){C.each(this.items,function(F,E){if(E&&E.close&&E!=D){E.close()}})},open:function(D){this._closeAll(D);D.open()}});C.fn.menuajax=function(D){this.each(function(){new B(C(this),D)})}})(jQuery)
