	var t_tooltip = false;
	var t_tooltipShadow = false;
	var t_shadowSize = 3;
	var t_tooltipMaxWidth = 200;
	var t_tooltipMinWidth = 100;
	var t_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(!t_tooltip){
			t_tooltip = document.createElement('DIV');
			t_tooltip.id = 't_tooltip';
			t_tooltipShadow = document.createElement('DIV');
			t_tooltipShadow.id = 't_tooltipShadow';
			
			document.body.appendChild(t_tooltip);
			document.body.appendChild(t_tooltipShadow);	
			
			if(tooltip_is_msie){
				t_iframe = document.createElement('IFRAME');
				t_iframe.frameborder='5';
				t_iframe.style.backgroundColor='#FFFFFF';
				t_iframe.src = '#'; 	
				t_iframe.style.zIndex = 100;
				t_iframe.style.position = 'absolute';
				document.body.appendChild(t_iframe);
			}
			
		}
		
		t_tooltip.style.display='block';
		t_tooltipShadow.style.display='block';
		if(tooltip_is_msie)t_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;
		
		t_tooltip.style.width = null;	// Reset style width if it's set 
		t_tooltip.innerHTML = tooltipTxt;
		t_tooltip.style.left = leftPos + 'px';
		t_tooltip.style.top = e.clientY + 10 + st + 'px';

		
		t_tooltipShadow.style.left =  leftPos + t_shadowSize + 'px';
		t_tooltipShadow.style.top = e.clientY + 10 + st + t_shadowSize + 'px';
		
		if(t_tooltip.offsetWidth>t_tooltipMaxWidth){
			t_tooltip.style.width = t_tooltipMaxWidth + 'px';
		}
		
		var tooltipWidth = t_tooltip.offsetWidth;		
		if(tooltipWidth<t_tooltipMinWidth)tooltipWidth = t_tooltipMinWidth;
		
		
		t_tooltip.style.width = tooltipWidth + 'px';
		t_tooltipShadow.style.width = t_tooltip.offsetWidth + 'px';
		t_tooltipShadow.style.height = t_tooltip.offsetHeight + 'px';		
		
		if((leftPos + tooltipWidth)>bodyWidth){
			t_tooltip.style.left = (t_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth)) + 'px';
			t_tooltipShadow.style.left = (t_tooltipShadow.style.left.replace('px','') - ((leftPos + tooltipWidth)-bodyWidth) + t_shadowSize) + 'px';
		}
		
		if(tooltip_is_msie){
			t_iframe.style.left = t_tooltip.style.left;
			t_iframe.style.top = t_tooltip.style.top;
			t_iframe.style.width = t_tooltip.offsetWidth + 'px';
			t_iframe.style.height = t_tooltip.offsetHeight + 'px';
		
		}
				
	}
	function getTooltip(tooltipTxt,leftPos,topPos,maxWidth) {
		var bodyWidth = Math.max(document.body.clientWidth,document.documentElement.clientWidth) - 20;

			t_tooltip = document.createElement('DIV');
			t_tooltip.id = 't_tooltip';
			t_tooltipShadow = document.createElement('DIV');
			t_tooltipShadow.id = 't_tooltipShadow';
			
			document.body.appendChild(t_tooltip);
			document.body.appendChild(t_tooltipShadow);	
			
		if(tooltip_is_msie){
			t_iframe = document.createElement('IFRAME');
			t_iframe.frameborder='5';
			t_iframe.style.backgroundColor='#FFFFFF';
			t_iframe.src = '#'; 	
			t_iframe.style.zIndex = 100;
			t_iframe.style.position = 'absolute';
			document.body.appendChild(t_iframe);
		}
		
		t_tooltip.style.display='block';
		t_tooltip.style.top=topPos;
		t_tooltip.style.left=leftPos;
		t_tooltipShadow.style.display='block';
		if(tooltip_is_msie)t_iframe.style.display='block';
		
		t_tooltip.style.width = null;
		t_tooltip.innerHTML = tooltipTxt;
		t_tooltip.style.left = leftPos + 'px';
		t_tooltip.style.top = topPos + 'px';

		t_tooltipShadow.style.left = leftPos + t_shadowSize + 'px';
		t_tooltipShadow.style.top = e.clientY + 10 + st + t_shadowSize + 'px';
		
		var tooltipWidth = t_tooltip.offsetWidth;
		if(tooltipWidth<t_tooltipMinWidth)tooltipWidth = t_tooltipMinWidth;
		if(tooltipWidth>maxWidth)tooltipWidth = maxWidth;
		t_tooltip.style.width = tooltipWidth + 'px';
		
		t_tooltipShadow.style.width = t_tooltip.offsetWidth + 'px';
		t_tooltipShadow.style.height = t_tooltip.offsetHeight + 'px';

		if(tooltip_is_msie){
			t_iframe.style.left = t_tooltip.style.left;
			t_iframe.style.top = t_tooltip.style.top;
			t_iframe.style.width = t_tooltip.offsetWidth + 'px';
			t_iframe.style.height = t_tooltip.offsetHeight + 'px';
		
		}
	}
	
	function hideTooltip() {
		t_tooltip.style.display='none';
		t_tooltipShadow.style.display='none';		
		if(tooltip_is_msie)t_iframe.style.display='none';		
	}
	