jQuery.fn.codaBubble=function(opts){var bubble=this;opts=jQuery.extend({distances:[20],leftShifts:[30],bubbleTimes:[400],hideDelays:[0],bubbleWidths:[200],bubbleImagesPath:"",msieFix:true,msiePop:true},opts||{});function bubbleHtmlWrapper(bubbleHtml){return'<table class="popup" style="opacity: 0; top: -120px; left: -33px; display: none;"><tr><td class="corner topleft"/><td class="top"/><td class="corner topright"/></tr><tr><td class="leftbubble"/><td class="bubble_content">'+bubbleHtml+'</td><td class="rightbubble"/></tr><tr><td class="corner bottomleft"/><td class="bottom"><img style="display:block;" width="30" height="29" alt="" /></td><td class="corner bottomright"/></tr></table>';}return jQuery(bubble).each(function(i){var bubbleHtml=jQuery('.bubble_html',this).html();jQuery('.bubble_html',this).hide().after(bubbleHtmlWrapper(bubbleHtml));jQuery('.popup td.bottom img',this).attr('src',opts.bubbleImagesPath+'/bubble-tail2.png');if(opts.msieFix){if($.browser.msie){jQuery('.popup td.topleft').css('background-image','url('+opts.bubbleImagesPath+'/bubble-1.gif)');jQuery('.popup td.top').css('background-image','url('+opts.bubbleImagesPath+'/bubble-2.gif)');jQuery('.popup td.topright').css('background-image','url('+opts.bubbleImagesPath+'/bubble-3.gif)');jQuery('.popup td.left').css('background-image','url('+opts.bubbleImagesPath+'/bubble-4.gif)');jQuery('.popup td.right').css('background-image','url('+opts.bubbleImagesPath+'/bubble-5.gif)');jQuery('.popup td.bottomleft').css('background-image','url('+opts.bubbleImagesPath+'/bubble-6.gif)');jQuery('.popup td.bottom').css('background-image','url('+opts.bubbleImagesPath+'/bubble-7.gif)');jQuery('.popup td.bottomright').css('background-image','url('+opts.bubbleImagesPath+'/bubble-8.gif)');jQuery('.popup td.bottom img').attr('src',opts.bubbleImagesPath+'/bubble-tail2.gif');}}var distance=opts.distances[i];var time=opts.bubbleTimes[i];var hideDelay=opts.hideDelays[i];var hideDelayTimer=null;var beingShown=false;var shown=false;var trigger=jQuery('.trigger',this);var popup=jQuery('.popup',this).css('opacity',0);jQuery([trigger.get(0),popup.get(0)]).mouseover(function(){jQuery(popup).css("width",opts.bubbleWidths[i]+"px");var triggerWidth=jQuery(trigger.get(0)).css('width');if(hideDelayTimer)clearTimeout(hideDelayTimer);if(beingShown||shown){return;}else{beingShown=true;popup.css({top:-100,left:opts.leftShifts[i],display:'block'}).animate({top:'-='+distance+'px',opacity:1},time,'swing',function(){beingShown=false;shown=true;});}}).mouseout(function(){if(hideDelayTimer)clearTimeout(hideDelayTimer);hideDelayTimer=setTimeout(function(){hideDelayTimer=null;popup.animate({top:'-='+distance+'px',opacity:0},time,'swing',function(){shown=false;popup.css('display','none');});},hideDelay);});if(!opts.msiePop&&$.browser.msie){jQuery(popup).remove();}});}
