/*
 * jquery flower bubble
 * blocks and tints the screen, draws a bubble and a flower inside of it
 *
 * @author Oktay Acikalin(ok@ryotic.de)
 * @version 0.4
 * @license MIT / GPL v2
 * @copyright Oktay Acikalin, 7 October, 2008
 * @package jquery_flower_bubble
 **/
var flower_bubble=function(b){this.defaults={base_obj:null,container_id:"flower_bubble_container",fade_speed:"fast",zindex:1000,block_mode:"base_obj",base_dir:"images",background:{css:"white",opacity:0.5},bubble:{image:"bubble.png",width:"auto",height:"auto"},flower:{image:"flower.gif",width:"auto",height:"auto"}};var c=new Date();this.defaults.container_id+="_"+c.getTime();this.base_obj;this.container_id;this.fade_speed;this.zindex;this.block_mode;this.base_dir;this.background;this.bubble;this.flower;jQuery.extend(this.defaults,b);jQuery.extend(this,this.defaults);var d=$('<img src="'+this.base_dir+"/"+this.bubble.image+'">');var a=$('<img src="'+this.base_dir+"/"+this.flower.image+'">');if(this.bubble.width=="auto"||this.bubble.width==undefined){this.bubble.width=d.get(0).width}if(this.bubble.height=="auto"||this.bubble.height==undefined){this.bubble.height=d.get(0).height}if(this.flower.width=="auto"||this.flower.width==undefined){this.flower.width=a.get(0).width}if(this.flower.height=="auto"||this.flower.height==undefined){this.flower.height=a.get(0).height}this.flowers=0;this.enable=function(){this.flowers++;if($("body > div#"+this.container_id).length!=0){return}var i=this.base_obj.offset();var f=$("<div></div>");f.attr("id",this.container_id);f.css({position:"absolute","z-index":this.zindex,top:i.top,left:0,width:"100%",overflow:"hidden",height:Math.max($(window).height(),$("body").height())-i.top});if(this.block_mode=="base_obj"){f.css({left:i.left,width:this.base_obj.outerWidth(),height:this.base_obj.outerHeight()})}f.hide();var h=$("<div></div>");h.css({position:"absolute",width:"100%",height:"100%",background:this.background.css,opacity:this.background.opacity});f.append(h);var e=$("<div></div>");e.css({position:"relative",background:'url("'+d.attr("src")+'") no-repeat',width:this.bubble.width,height:this.bubble.height});var g=a;g.css({position:"relative",left:this.bubble.width/2-this.flower.width/2,top:this.bubble.height/2-this.flower.height/2-2});g.mousedown(function(){return false});e.append(g);f.append(e);$("body").append(f);e.css("left",f.width()/2-this.bubble.width/2);e.css("top",f.height()/2-this.bubble.height/2);if(f.pngFix){f.pngFix()}f.mousedown(function(){return false});f.fadeIn(this.fade_speed)};this.disable=function(){if($("body > div#"+this.container_id).length==0){return}this.flowers=Math.max(0,this.flowers-1);if(this.flowers>0){return}$("body > div#"+this.container_id).fadeOut(this.fade_speed,function(){$(this).remove()})}};
