(function(b){document.extruderLeft=0;document.extruderTop=0;var a=b.browser.msie;b.mbExtruder={author:"Matteo Bicocchi",version:"1.5",defaults:{width:350,positionFixed:true,sensibility:800,position:"top",extruderOpacity:1,flapDim:100,flapMargin:25,textOrientation:"bt",onExtOpen:function(){},onExtContentLoad:function(){},onExtClose:function(){},slideTimer:300},buildMbExtruder:function(c){return this.each(function(){this.options={};b.extend(this.options,b.mbExtruder.defaults);b.extend(this.options,c);var m,e,l,h,j,f;m=b(this);m.css("zIndex",100);var k=this.options.positionFixed?"fixed":"absolute";if(this.options.position=="top"){document.extruderTop++;if(document.extruderTop>1){alert("more than 1 mb.extruder on top is not supported jet... hope soon!");return}}m.addClass("extruder");m.addClass(this.options.position);l=this.options.position=="top"?{position:k,top:0,left:"50%",marginLeft:-this.options.width/2,width:this.options.width}:{position:k,top:0,left:-(this.options.width)};m.css(l);if(!a){m.css({opacity:this.options.extruderOpacity})}m.wrapInner("<div class='ext_wrapper'></div>");e=m.find(".ext_wrapper");h={width:this.options.width,position:"absolute"};e.css(h);if(b.metadata){b.metadata.setType("class");if(m.metadata().title){m.attr("extTitle",m.metadata().title)}if(m.metadata().url){m.attr("extUrl",m.metadata().url)}if(m.metadata().data){m.attr("extData",m.metadata().data)}}e.append("<div class='footer'></div><div class='flap'><span class='flapLabel'/></div>");m.find(".content").prepend("<div class='header'></div>");j=m.attr("extTitle")?m.attr("extTitle"):"";m.find(".flapLabel").text(j);if(this.options.position=="left"){m.find(".header").html(j);m.find(".flapLabel").html(j).css({whiteSpace:"noWrap"});var g=this.options.textOrientation=="tb";var i=m.find(".flapLabel").getFlipTextDim()[1];m.find(".flapLabel").mbFlipText(g)}else{m.find(".flapLabel").html(j).css({whiteSpace:"noWrap",width:this.options.flapDim})}if(m.attr("extUrl")){m.setMbExtruderContent({url:m.attr("extUrl"),data:m.attr("extData"),callback:function(){if(m.get(0).options.onExtContentLoad){m.get(0).options.onExtContentLoad()}}})}else{m.setExtruderVoicesAction()}m.find(".flap .flapLabel").hoverIntent({over:function(){m.mb_bringToFront();m.openMbExtruder()},out:function(){},sensitivity:2,interval:this.options.sensibility});m.find(".flap").bind("click",function(){m.openMbExtruder()});m.find(".content").bind("mouseleave",function(){f=setTimeout(function(){m.closeMbExtruder()},1000)}).bind("mouseenter",function(){clearTimeout(f)});if(this.options.position=="left"){m.find(".content").css({width:this.options.width,height:"100%"});m.find(".flap").css({marginRight:-40,top:100+document.extruderLeft});document.extruderLeft+=i+this.options.flapMargin;var d=b("<div/>").css({position:"absolute",top:0,left:0,width:"100%",height:"100%",background:"transparent"});m.find(".flap").append(d)}})},setMbExtruderContent:function(f){this.options={url:false,data:"",callback:function(){}};b.extend(this.options,f);if(!this.options.url||this.options.url.length==0){alert("internal error: no URL to call");return}var e=this.options.url;var h=this.options.data;var d=b(this),g;var c=this.options.callback;b.ajax({type:"POST",url:e,data:h,success:function(i){d.find(".header").after(i);g=d.find(".voice");g.hover(function(){b(this).addClass("hover")},function(){b(this).removeClass("hover")});d.setExtruderVoicesAction();if(c){setTimeout(function(){c()},100)}}})},openMbExtruder:function(){var d=b(this);d.addClass("open");if(!a){d.css("opacity",1)}var c=d.get(0).options.position;d.mb_bringToFront();if(c=="top"){d.find(".content").slideDown(d.get(0).options.slideTimer);if(d.get(0).options.onExtOpen){d.get(0).options.onExtOpen()}}else{if(!a){b(this).css("opacity",1)}d.animate({left:0},d.get(0).options.slideTimer);if(d.get(0).options.onExtOpen){d.get(0).options.onExtOpen()}}},closeMbExtruder:function(){var c=b(this);c.removeClass("open");if(!a){c.css("opacity",c.get(0).options.extruderOpacity)}c.closeAllPanel();if(c.get(0).options.position=="top"){c.find(".content").slideUp(c.get(0).options.slideTimer);if(c.get(0).options.onExtClose){c.get(0).options.onExtClose()}}else{if(c.get(0).options.position=="left"){c.animate({left:-c.get(0).options.width},c.get(0).options.slideTimer,function(){if(c.get(0).options.onExtClose){c.get(0).options.onExtClose()}})}}}};jQuery.fn.mb_bringToFront=function(){var c=10;b("*").each(function(){if(b(this).css("position")=="absolute"||b(this).css("position")=="fixed"){var d=parseInt(b(this).css("zIndex"));c=d>c?parseInt(b(this).css("zIndex")):c}});b(this).css("zIndex",c+=1);return c};b.fn.setExtruderVoicesAction=function(){var d=b(this);var c=b(this).find(".voice");c.each(function(){var e=b(this);if(b.metadata){b.metadata.setType("class");if(e.metadata().panel){e.attr("panel",e.metadata().panel)}if(e.metadata().data){e.attr("data",e.metadata().data)}if(e.metadata().disabled){e.attr("disabled",e.metadata().disabled)}}if(e.attr("disabled")){e.disableExtruderVoice()}if(e.attr("panel")&&e.attr("panel")!="false"){e.append("<span class='settingsBtn'/>");e.find(".settingsBtn").css({opacity:0.5});e.find(".settingsBtn").hover(function(){b(this).css({opacity:1})},function(){b(this).not(".sel").css({opacity:0.5})}).click(function(){if(b(this).parents().hasClass("sel")){d.closeAllPanel();return}d.find(".optionsPanel").slideUp(400,function(){b(this).remove()});c.removeClass("sel");c.find(".settingsBtn").removeClass("sel").css({opacity:0.5});var f=b("<div class='optionsPanel'></div>");b.ajax({type:"POST",url:e.attr("panel"),data:e.attr("data"),success:function(g){var h=b(g);f.html(h);f.children().addClass("panelVoice").click(function(){d.closeAllPanel();d.closeMbExtruder()});f.slideDown(400)}});e.after(f);e.addClass("sel");e.find(".settingsBtn").addClass("sel").css({opacity:1})})}if(e.find("a").length==0&&e.attr("panel")){e.find(".label").not(".disabled").css("cursor","pointer").click(function(){e.find(".settingsBtn").click()})}if((!e.attr("panel")||e.attr("panel")=="false")&&(!e.attr("disabled")||e.attr("disabled")!="true")){e.find(".label").click(function(){d.closeAllPanel();d.closeMbExtruder()})}})};b.fn.disableExtruderVoice=function(){var c=b(this);c.attr("disabled",true);c.find(".label").css("opacity",0.4);c.hover(function(){b(this).removeClass("hover")},function(){b(this).removeClass("hover")});c.find(".label").addClass("disabled").css("cursor","default");c.find(".settingsBtn").hide();c.bind("click",function(d){d.stopPropagation();return false})};b.fn.enableExtruderVoice=function(){var c=b(this);c.attr("disabled",false);c.find(".label").css("opacity",1);c.find(".label").removeClass("disabled").css("cursor","pointer");c.find(".settingsBtn").show();c.unbind("click")};b.fn.closeAllPanel=function(){var c=b(this).find(".voice");b(this).find(".optionsPanel").slideUp(400,function(){b(this).remove()});c.removeClass("sel");c.find(".settingsBtn").removeClass("sel").css("opacity",0.5)};b.fn.buildMbExtruder=b.mbExtruder.buildMbExtruder;b.fn.setMbExtruderContent=b.mbExtruder.setMbExtruderContent;b.fn.closeMbExtruder=b.mbExtruder.closeMbExtruder;b.fn.openMbExtruder=b.mbExtruder.openMbExtruder})(jQuery);