/* jquery.LavaLamp v1.4 http://nixbox.com/projects/jquery-lavalamp/ Copyright (c) 2008-2012 Jolyon Terwilliger - jolyon@nixbox.com Dual licensed under the MIT and GPL licenses: http://www.opensource.org/licenses/mit-license.php http://www.gnu.org/licenses/gpl.html */ (function(c){jQuery.fn.lavaLamp=function(a){function d(a){a=parseInt(a);return isNaN(a)?0:a}a=c.extend({target:"li",container:"",fx:"swing",speed:500,click:function(){return!0},startItem:"",includeMargins:!1,autoReturn:!0,returnDelay:0,setOnClick:!0,homeTop:0,homeLeft:0,homeWidth:0,homeHeight:0,returnHome:!1,autoResize:!1,selectClass:"selectedLava",homeClass:"homeLava",skipClass:"noLava",returnStart:function(){},returnFinish:function(){},hoverStart:function(){},hoverFinish:function(){}},a||{});""== a.container&&(a.container=a.target);a.autoResize&&c(window).resize(function(){c(a.target+"."+a.selectClass).trigger("mouseenter")});return this.each(function(){function k(e,c){c=="return"?a.returnStart(e):a.hoverStart(e);e||(e=b);if(!a.includeMargins){h=d(e.css("marginLeft"));i=d(e.css("marginTop"))}var g={left:e.position().left+h,top:e.position().top+i,width:e.outerWidth()-l,height:e.outerHeight()-m};f.stop().animate(g,a.speed,a.fx,function(){c=="return"?a.returnFinish(e):a.hoverFinish(e)})}c(this).css("position")== "static"&&c(this).css("position","relative");if(a.homeTop||a.homeLeft){var n=c("<"+a.container+' class="'+a.homeClass+'">'+a.container+">").css({left:a.homeLeft,top:a.homeTop,width:a.homeWidth,height:a.homeHeight,position:"absolute",display:"block"});c(this).prepend(n)}var s=location.pathname+location.search+location.hash,b,f,j=c(a.target,this).not("."+a.skipClass),g,l=0,m=0,p=0,q=0,h=0,i=0;b=c(a.target+"."+a.selectClass,this);a.startItem!=""&&(b=j.eq(a.startItem));if((a.homeTop||a.homeLeft)&&b.length< 1)b=n;if(b.length<1){var o=0,r;j.each(function(){var a=c("a:first",this).attr("href");if(s.indexOf(a)>-1&&a.length>o){r=c(this);o=a.length}});o>0&&(b=r)}b.length<1&&(b=j.eq(0));b=c(b.eq(0).addClass(a.selectClass));j.bind("mouseenter focusin",function(){if(g){clearTimeout(g);g=null}k(c(this))}).click(function(e){if(a.setOnClick){b.removeClass(a.selectClass);b=c(this).addClass(a.selectClass)}return a.click.apply(this,[e,this])});f=c("<"+a.container+' class="backLava">
'+ a.container+">").css({position:"absolute",display:"block",margin:0,padding:0}).prependTo(this);if(a.includeMargins){p=d(b.css("marginTop"))+d(b.css("marginBottom"));q=d(b.css("marginLeft"))+d(b.css("marginRight"))}l=d(f.css("borderLeftWidth"))+d(f.css("borderRightWidth"))+d(f.css("paddingLeft"))+d(f.css("paddingRight"))-q;m=d(f.css("borderTopWidth"))+d(f.css("borderBottomWidth"))+d(f.css("paddingTop"))+d(f.css("paddingBottom"))-p;if(a.homeTop||a.homeLeft)f.css({left:a.homeLeft,top:a.homeTop,width:a.homeWidth, height:a.homeHeight});else{if(!a.includeMargins){h=d(b.css("marginLeft"));i=d(b.css("marginTop"))}f.css({left:b.position().left+h,top:b.position().top+i,width:b.outerWidth()-l,height:b.outerHeight()-m})}c(this).bind("mouseleave focusout",function(){var b=null;if(a.returnHome)b=n;else if(!a.autoReturn)return true;if(a.returnDelay){g&&clearTimeout(g);g=setTimeout(function(){k(b,"return")},a.returnDelay)}else k(b,"return");return true})})}})(jQuery);