/*
written by buyacar.co.uk
dependencies:

/jquery/jquery-1.3.2.min.js
/jquery/flowplayer/jquery.tools.min.js

to open a tooltip
<span class="hasToolTip http://www.someTootlTipUrl">hover over for tooltip</span>
or
<a href="http://www.someTootlTipUrl" class="hasToolTipOnClick">click for tooltip</a>
*/


var defaultToolTip = {callFunctionOnLoad:null};

$(document).ready(function() {
	defaultToolTip.init();
});

defaultToolTip.init = function(){
	$(".hasToolTip").after('<div class="flowToolTip"></div>').tooltip({
		position: 'bottom left',
		offset:[0,30],
		lazy:false,
		relative:true,
		onBeforeShow:defaultToolTip.onBeforeShow
	}).dynamic();	
	$(".hasToolTipOnClick")
		.after('<div class="flowToolTip"></div>')
		.tooltip({
			position: 'bottom left',
			offset:[0,30],
			lazy:false,
			events:{def:"click,mouseout"},
			relative:true,
			onBeforeShow:defaultToolTip.onBeforeShow
		}).dynamic().click(function(){return false;});
	$(".hasToolTipNoLoad").tooltip({
		position: 'bottom center',
		relative:true
	}).dynamic();
		
}

defaultToolTip.onBeforeShow = function(){
	var trig = this.getTip().prev();
	if(trig.attr("href")){
		var toolTipURL = trig.attr("href");
	}else{
		var toolTipURL = trig.attr("class");
	}
	toolTipURL = toolTipURL.replace("hasToolTip ","").replace("hasToolTipOnClick ","");
	this.getTip().html("<p>LOADING...</p>").load(toolTipURL,defaultToolTip.toolTipLoaded);
}

defaultToolTip.toolTipLoaded = function(){
	$("div.flowToolTip a:not([target])").click(function(){
			$(this).closest('div.flowToolTip').load(this.href,defaultToolTip.toolTipLoaded);
			return false;
	});
	if(jQuery.isFunction(defaultToolTip.callFunctionOnLoad)){	
		defaultToolTip.callFunctionOnLoad()
	}
}

defaultToolTip.setDialogLoadedFunction = function(fn){
	defaultToolTip.callFunctionOnLoad = fn;
}

defaultToolTip.setOnBeforeShow = function(fn){
	$(".hasToolTip,.hasToolTipOnClick").each(function(index){
				  $(this).tooltip().onBeforeShow(fn);
			});
}

defaultToolTip.setOnBeforeHide = function(fn){
	$(".hasToolTip,.hasToolTipOnClick").each(function(index){
				  $(this).tooltip().onBeforeHide(fn);
			});
}
