/************************************************************************************************************
(C) www.dhtmlgoodies.com, October 2005

This is a script from www.dhtmlgoodies.com. You will find this and a lot of other scripts at our website.	

Updated:	
	March, 11th, 2006 - Fixed positioning of tooltip when displayed near the right edge of the browser.
	April, 6th 2006, Using iframe in IE in order to make the tooltip cover select boxes.
	
Terms of use:
You are free to use this script as long as the copyright message is kept intact. However, you may not
redistribute, sell or repost it without our permission.

Thank you!

www.dhtmlgoodies.com
Alf Magne Kalleland

************************************************************************************************************/	
var esc_tooltip = false;
var esc_tooltipShadow = false;
var esc_shadowSize = 4;
var esc_tooltipMaxWidth = 300;
var esc_tooltipMinWidth = 100;
var esc_iframe = false;
var tooltip_is_msie = (navigator.userAgent.indexOf('MSIE')>=0 && navigator.userAgent.indexOf('opera')==-1 && document.all)?true:false;

function showTooltip(e,tooltipTxt) {
	
	var bodyWidth = Math.max(document.body.clientWidth,document.documentElement.clientWidth) - 20;

	if(!esc_tooltip){
		esc_tooltip 			= document.createElement('DIV');
		esc_tooltip.id 			= 'esc_tooltip';
		esc_tooltipShadow 		= document.createElement('DIV');
		esc_tooltipShadow.id 	= 'esc_tooltipShadow';
		
		document.body.appendChild(esc_tooltip);
		document.body.appendChild(esc_tooltipShadow);	
		
		if(tooltip_is_msie){
			esc_iframe = document.createElement('IFRAME');
			esc_iframe.frameborder='5';
			esc_iframe.style.backgroundColor='#FFFFFF';
			esc_iframe.src = '#'; 	
			esc_iframe.style.zIndex = 100;
			esc_iframe.style.position = 'absolute';
			document.body.appendChild(esc_iframe);
		}
		
	}
	
	esc_tooltip.style.display='block';
	esc_tooltipShadow.style.display='block';
	if(tooltip_is_msie)esc_iframe.style.display='block';
	
	var st = Math.max(document.body.scrollTop,document.documentElement.scrollTop);
	if(navigator.userAgent.toLowerCase().indexOf('safari')>=0)st=0; 
	var leftPos = e.clientX + 10;
	
	esc_tooltip.style.width = null;	// Reset style width if it's set 
	esc_tooltip.innerHTML = tooltipTxt;
	esc_tooltip.style.left = leftPos + 'px';
	esc_tooltip.style.top = e.clientY + 10 + st + 'px';

	
	esc_tooltipShadow.style.left =  leftPos + esc_shadowSize + 'px';
	esc_tooltipShadow.style.top = e.clientY + 10 + st + esc_shadowSize + 'px';
	
	if(esc_tooltip.offsetWidth>esc_tooltipMaxWidth){	/* Exceeding max width of tooltip ? */
		esc_tooltip.style.width = esc_tooltipMaxWidth + 'px';
	}
	
	var tooltipWidth = esc_tooltip.offsetWidth;		
	if(tooltipWidth<esc_tooltipMinWidth)tooltipWidth = esc_tooltipMinWidth;
	
	
	esc_tooltip.style.width = tooltipWidth + 'px';
	esc_tooltipShadow.style.width = esc_tooltip.offsetWidth + 'px';
	esc_tooltipShadow.style.height = esc_tooltip.offsetHeight + 'px';		
	
	if((leftPos + tooltipWidth)>bodyWidth){
		esc_tooltip.style.left = (esc_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth)) + 'px';
		esc_tooltipShadow.style.left = (esc_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth) + esc_shadowSize) + 'px';
	}
	
	if(tooltip_is_msie){
		esc_iframe.style.left = esc_tooltip.style.left;
		esc_iframe.style.top = esc_tooltip.style.top;
		esc_iframe.style.width = esc_tooltip.offsetWidth + 'px';
		esc_iframe.style.height = esc_tooltip.offsetHeight + 'px';
	
	}
			
}

function hideTooltip() {
	try {
		esc_tooltip.style.display='none';
		esc_tooltipShadow.style.display='none';		
		if(tooltip_is_msie)
			esc_iframe.style.display='none';		
	}
	catch(kuku){}		
}