var Tips=[];var Tip=new Class({options:{width:400,height:200,id:"tip",prefix:"tip_",canvas:false,header:"",position:"bottom",content:"",dom_place:"",pShift:0},Implements:[Events,Options],initialize:function(b,a){this.element=$(b);if(!this.element){return}this.setOptions(a);if(this.options.dom_place==""){this.options.dom_place="document.body"}if(!this.layout){this.doLayout()}this.TipEvents();this.element.addEvent("click",function(c){c.stop();if(!this.layout.getElement("canvas")){if(this.options.canvas){$(this.layout.id).ICanvasElement({width:this.options.width,height:this.options.height,zindex:1,corners:[5,5,5,5],bodyStartColor:[36,36,36,1],bodyStopColor:[36,36,36,1],border:1,borderStartColor:[51,51,51,1],borderStopColor:[51,51,51,1],shadow:9,pointer:"bottom",pointerSize:[16,8],pointerShiftX:this.options.pShift})}}this.closeAll().toggle(c)}.bind(this));this.hide()},toggle:function(){this[this.visible?"hide":"show"]()},show:function(){this.layout.setStyle("display","block");this.visible=true},hide:function(){this.layout.setStyles({display:"none"});this.visible=false},closeAll:function(){Tips.each(function(a){a.hide()});Rainbows.each(function(a){a.hide()});return this},TipEvents:function(){document.addEvent("click",function(){if(this.visible){this.hide(this.layout)}}.bind(this));[this.element,this.layout].each(function(a){a.addEvents({click:function(b){b.stopPropagation()},keyup:function(b){b=new Event(b);if(b.key=="esc"&&this.visible){this.hide(this.layout)}}.bind(this)},this)},this);this.layout.getElements("a").each(function(a){if(a.rel=="external"){a.addEvent("click",function(b){b.stop();window.open(this.href);return false})}})},doLayout:function(){var e=this.options.id,d=this.options.prefix;var c=e+" ."+d;this.layout=new Element("div",{styles:{display:"block",position:"absolute"},id:e}).inject(this.options.dom_place);Tips.push(this);if(this.options.content!=""){this.layout.set("html",$(this.options.content).get("html"))}if(this.options.header!=""){var b=new Element("p",{"class":d+"head"}).set("text",this.options.header).inject(this.layout)}if(this.options.canvas){var a=new Element("div",{"class":d+"close"}).set("html",close_text).inject(this.layout)}this.closeButtons=document.getElements("#"+c+"close");this.closeButtons.each(function(f){f.addEvent("click",function(g){g.stop();this.hide()}.bind(this))}.bind(this));$extend(this.options,{layoutWidth:this.layout.getSize().x,layoutHeight:this.layout.getSize().y});this.hide()},rePosition:function(){var c=this.element.getCoordinates();var b=this.element.getSize();var a=c.left-(Math.round(this.options.layoutWidth/2))+(Math.round(b.x/2));if(this.options.position=="bottom"){var d=c.top+c.height+1}if(this.options.position=="top"){var d=c.top-c.height-this.options.layoutHeight-1}this.layout.setStyles({left:a,top:d})}});