	//general properties:
	var _tooltipPauseBeforeShow=100; //miliseconds to pause before showing the tooltip.
	var _tooltipDelay=0; //seconds before auto hiding. set 0 to make it permanent.
	var _tooltipBgColor="FFFFE1"; //background color of tooltip box
	var _tooltipTextColor="black"; //color of tooltip text.
	var _tooltipFontFamily="Tahoma"; //font family of tooltip text.
	var _tooltipFontSize=11; //font size of tooltip text.
	var _tooltipFontBold=false; //whether the tooltip text will be bold or not
	var _tooltipBorderStyle = "solid";
	var _tooltipBorderWidth = "1";
	var _tooltipWidth = 290;
	var _tooltipPadding = 2;
	var _tooltipXOffset = 10;
	var _tooltipYOffset = 10;
		
	//private data:
	var _tooltipContainerName="TooltipContainer_V1";
	
	//window.onload=function WindowLoad(event)
	function TooltipLoad(event)
	{
		var arrSpans=document.getElementsByTagName("img");
		var tooltipCount=0;
		for (var i=0; i<arrSpans.length; i++)
		{
			var objSpan=arrSpans[i];
			if ((objSpan.attributes["title"])&&(objSpan.attributes["title"].value.length > 0))
			{
			    objSpan.tooltipText = objSpan.attributes["title"].value;
				objSpan.attributes["title"].value = '';
				objSpan.onmouseover = ShowToolTip;
				objSpan.onmouseout = HideToolTip;
				tooltipCount++;
			}
		}
		if (tooltipCount > 0)
			document.onclick=HideToolTip;
	}

	function ShowToolTip(event)
	{
		//get windows event:
		if ((typeof event == "undefined")||(!event))
			event = window.event;
		
		//get container:
		var objContainer=document.getElementById(_tooltipContainerName);
		var iframeShim=document.getElementById(_tooltipContainerName+"_hvrShm");
		
		//get source element:
		var objSource=event.srcElement||event.target;
		
		//abort if no source available:
		if ((typeof objSource == "undefined")||(!objSource))
			return false;
		
		//create if does not exist:
		if (!objContainer)
		{
			objContainer = document.createElement("div");
			objContainer.id = _tooltipContainerName;
			objContainer.style.backgroundColor = _tooltipBgColor;
			objContainer.style.color = _tooltipTextColor;
			objContainer.style.fontFamily = _tooltipFontFamily;
			objContainer.style.fontSize = _tooltipFontSize;
			objContainer.style.borderStyle = _tooltipBorderStyle;
			objContainer.style.borderWidth = _tooltipBorderWidth;
			objContainer.style.width = _tooltipWidth;
			objContainer.style.padding = _tooltipPadding;
			objContainer.style.zIndex = 1000;
			if (_tooltipFontBold)
				objContainer.style.fontWeight = "bold";
			objContainer.style.position = "absolute";
			objContainer.style.display = "none";
			document.body.appendChild(objContainer);
			if (document.all && !iframeShim) 
			{ 
			    objContainer = document.getElementById(_tooltipContainerName)
				objContainer.insertAdjacentHTML("afterEnd", '<IFRAME style="position: absolute;z-index:0;" src="javascript:false;" frameBorder="0" scrolling="no" id="'+_tooltipContainerName+'_hvrShm" width:1px; height:1px/>');
				var iframeShim = document.getElementById(_tooltipContainerName+"_hvrShm");
				iframeShim.style.height = "1px";
			} 
	    }
		
		//get mouse position:
		var mouseX=event.x||event.pageX;
		var mouseY=event.y||event.pageY;
		
		//get body scroll:
		var scrollX=document.body.scrollLeft;
		var scrollY=document.body.scrollTop;

		if (mouseX+scrollX+_tooltipXOffset+_tooltipWidth>document.body.clientWidth)
		{
			mouseX = document.body.clientWidth-_tooltipWidth-_tooltipXOffset-scrollX-10; 
		}
		//alert (mouseY+scrollY+_tooltipYOffset);
		//set container position:
		if (!document.all) 
		{
			scrollX = 0;
			scrollY = 0;
		}
		objContainer.style.left = (mouseX+scrollX+_tooltipXOffset)+"px";
		objContainer.style.top = (mouseY+scrollY+_tooltipYOffset)+"px";
		
		//read tooltip text:
		//var strText=(objSource.attributes["title"])?objSource.attributes["title"].value:"";
		var strText = objSource.tooltipText;
		//strReplPattern = /(.{55}\s)/g;
		//strText = strText.replace(strReplPattern, "$1 <br>");
		//verify we have something to display:
		if (strText.length == 0)
			return false;
		
		//set container text:
		objContainer.innerHTML = strText;
		
		//show container:
		setTimeout("_ShowTooltipContainer();", _tooltipPauseBeforeShow);
		if (document.all && iframeShim)
		{
			iframeShim.style.left = objContainer.style.left;
			iframeShim.style.top = objContainer.style.top;
			iframeShim.style.width = objContainer.style.width;
			//iframeShim.style.height = objContainer.offsetHeight+5;
		}
		
		//set timer if needed:
		if (_tooltipDelay > 0)
			setTimeout("HideToolTip();", _tooltipDelay*1000);
		
		return false;
	}
	
	
	function HideToolTip(event)
	{
		//get container:
		var objContainer=document.getElementById(_tooltipContainerName);
		var iframeShim=document.getElementById(_tooltipContainerName+"_hvrShm");
		if (objContainer)
		{
			objContainer.style.display = "none";
			if (document.all)iframeShim.style.display = "none";
		}
	}
	
	function _ShowTooltipContainer()
	{
		//get container:
		var objContainer=document.getElementById(_tooltipContainerName);
		var iframeShim=document.getElementById(_tooltipContainerName+"_hvrShm");
		
		if (objContainer)
		{
			objContainer.style.display = "block";
			if (document.all)iframeShim.style.display = "block";
			if (document.all)iframeShim.style.height = objContainer.offsetHeight;
		}
	}