	if(document.getElementById)
	{stdBrowser = true}
	else
	{stdBrowser = false}
	
	var currElem,popUpWin;
	var X,Y;
	var down=false;
	var over=false;

	function showTip(evt,currElem,opacity,speed)
	{
		if(stdBrowser)
		{popUpWin = document.getElementById(currElem).style}
		else
		{popUpWin = eval("document."+currElem)}
		
		if(popUpWin.visibility=="hidden" && speed!=0) // make sure it fades only first time clicked on
		{
			tipOpenPosition(evt);

			setTrans(0);
			fadeIn(opacity,speed);
		}
		else
		{
			setTrans(opacity);
		}
		
		popUpWin.zIndex=1;
		popUpWin.visibility = "visible";
	}
	
	function tipOpenPosition(e)
	{
			if(document.all)
			{
				X=event.offsetX;
				Y=event.offsetY;
				
				popUpWin.pixelLeft = event.clientX + document.documentElement.scrollLeft;
				popUpWin.pixelTop = event.clientY + document.documentElement.scrollTop;
			
			}
			else
			{
				X=e.layerX;
				Y=e.layerY;

				popUpWin.top = window.pageYOffset+e.clientY + 'px';
				popUpWin.left = window.pageXOffset+e.clientX + 'px';
			}
	}
	
	function hideTip(currElem,opacity,speed)
	{
			if(stdBrowser)
			{popUpWin = document.getElementById(currElem).style}
			else
			{popUpWin = eval("document."+currElem)}

			if(speed!=0)
			{
				fadeOut(opacity,speed);
			}
			else
			{
				popUpWin.visibility = 'hidden';
			}
	}
	
	function setTrans(opacity)
	{
			popUpWin.opacity = (opacity / 100); 
	    	popUpWin.MozOpacity = (opacity / 100); 
	    	popUpWin.KhtmlOpacity = (opacity / 100); 
	    	popUpWin.filter = "alpha(opacity=" + opacity + ")"; 
	}
	
	function fadeIn(opacity,speed)
	{
			var speed = (Math.round(speed / 100)); 
			var timer = 0;
			
	        for(i = 0; i <= opacity; i++)
			{ 
            	setTimeout("setTrans("+i+")",(timer * speed)); 
	            timer++; 
    	    }
	}
	
	function fadeOut(opacity,speed)
	{
			var speed = (Math.round(speed / 100)); 
			var timer = 0;
			
	        for(i=opacity; i >= 0; i--)
			{ 
	            setTimeout("setTrans("+i+")",(timer * speed));
	            timer++;
			}
			setTimeout("popUpWin.visibility = 'hidden'",(timer * speed));
			
			loaded = null;
	}	
	
	function mdown(e)
	{
		if(over==true)
		{
			if(document.all)
			{
				X=event.offsetX;
				Y=event.offsetY;
			}
			else
			{
				X=e.layerX;
				Y=e.layerY;
			}
			down=true;
		}
	}
	
	function mmove(e)
	{
			if(down==true)
			{
				if(document.all)
				{
					popUpWin.pixelLeft = event.clientX-X + document.body.scrollLeft;
					popUpWin.pixelTop = event.clientY-Y + document.body.scrollTop;
				}
				else
				{
					popUpWin.top = window.pageYOffset+e.clientY-Y + 'px';
					popUpWin.left = window.pageXOffset+e.clientX-X + 'px';
				}
			}
	}
	
	function mup(e)
	{
			down=false;
	}
	
	function moveTip(e,currElem,over)
	{
		if(stdBrowser)
		{popUpWin = document.getElementById(currElem).style}
		else
		{popUpWin = eval("document."+currElem)}
		
		if(over==true)
		{
			popUpWin.zIndex=1;
			
			if(stdBrowser)
			{
				document.onmousedown=mdown;
				document.onmouseup=mup;
				document.onmousemove=mmove;
			}
			else
			{
				document.captureEvents(Event.MOUSEDOWN | Event.MOUSEMOVE | Event.MOUSEUP);
			}
		}
		else
		{
			//popUpWin.zIndex=0;
		}
	}
