/** * Qlue QTip - Content Plugin * * @author Aaron Harding  * @package Qlue QTip * @license GNU/GPL * * This plugin will convert a basic syntax of {qlueTip title=[tooltip]}Tool Tip Text{/qluetip} into a valid QTip. * The user can add extra parameters to the syntax to match their needs. For further information visit http://www.Qlue.co.uk.
 */
var QlueTip=new Class({options:{transition:Fx.Transitions.linear,Class:"default",position:"cursor",width:300,duration:150,sticky:false,wait:false},initialize:function(element,contain,options){this.setOptions(options);this.element=$(element);this.contain=$(contain);this.open=false;this.build();this.addEvents();this.fx=new Fx.Styles(this.tooltip,this.options)},build:function(){this.tooltip=new Element("div",{"class":"qluetip"}).inject(document.body);this.tooltip.setStyles({visibility:"hidden",overflow:"hidden",position:"absolute",top:0,left:0,"z-index":999,width:this.options.width+"px"});var container=new Element("div",{"class":this.options.Class}).inject(this.tooltip);var topLeft=new Element("div",{"class":"QTip-tl"}).inject(container);var topRight=new Element("div",{"class":"QTip-tr"}).inject(topLeft);var top=new Element("div",{"class":"QTip-t"}).inject(topRight);var left=new Element("div",{"class":"QTip-l"}).inject(container);var right=new Element("div",{"class":"QTip-r"}).inject(left);this.contain.setStyle("display","block").inject(right);var bottomLeft=new Element("div",{"class":"QTip-bl"}).inject(container);var bottomRight=new Element("div",{"class":"QTip-br"}).inject(bottomLeft);var bottom=new Element("div",{"class":"QTip-b"}).inject(bottomRight);var tip=new Element("div",{"class":"QTip-arrow"}).inject(bottom);if(this.options.sticky){this.close=new Element("div",{"class":"QTip-close"}).injectInside(topLeft)}return this},addEvents:function(){this.element.addEvent("mouseenter",this.show.bindWithEvent(this,this.element));this.options.sticky?this.close.addEvent("click",this.hide.bindWithEvent(this,this.element)):this.element.addEvent("mouseleave",this.hide.bindWithEvent(this,this.element));return this},show:function(event){this.position(event);if(!this.open){this.fx.start({opacity:1});this.open=true}},hide:function(event){if(this.open){this.fx.start({opacity:0});this.open=false}},position:function(event){var coordinates={top:0,left:0};var qluetip={x:this.tooltip.offsetWidth,y:this.tooltip.offsetHeight};var event=new Event(event);if(this.options.position=="cursor"){coordinates.top=(event.page.y-qluetip.y);coordinates.left=(event.page.x-(qluetip.x/2))+12}else{var object=this.element.getCoordinates();coordinates.top=object.top-qluetip.y;coordinates.left=(object.left-(qluetip.x/2)+(object.width/2))+12}this.tooltip.setStyles({top:coordinates.top+"px",left:coordinates.left+"px"})}});QlueTip.implement(new Events,new Options);if(typeof jQuery!="undefined"){jQuery.noConflict()};
