/* ===========================================================================================
 VTour ToolTips

 Author:  Selwyn Wan
 Company: EdgeState Services Inc.

 Copyright © 2009, EdgeState Services Inc.
 ===========================================================================================
*/

var kVTToolTipVersion = "1.2.9";
var kVTToolTipShowDelay = 300;

function vtGetWindowWidth() 
{
    return window.innerWidth || document.documentElement.clientWidth || document.body.clientWidth
}; 

function mouseX(evt) 
{
    return evt.clientX ? evt.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft) : evt.pageX;
} 

function mouseY(evt) 
{
    return evt.clientY ? evt.clientY + (document.documentElement.scrollTop || document.body.scrollTop) : evt.pageY;
} 

function vtToolTipShown()
{
	var docEle = document.getElementById("tgToolTip"); 
	
	return (docEle.style.visibility == "visible" || docEle.style.visibility == "show");
}

function vtShowToolTip(inText) 
{
	if (document.getElementById) 
	{
		var windowWidth = vtGetWindowWidth(); 
		
		docEle = document.getElementById("tgToolTip"); 
		docStyle = docEle.style; 
		
		if (vtToolTipShown()) 
		{ 
		    if (inText == gVTToolTipText)
		        return;
		    else
		        vtHideToolTip();    
		} 
		
	    if (docEle.offsetWidth) 
		    edgeWidth = docEle.offsetWidth; 
	    else if (docEle.clip.width) 
		    edgeWidth = docEle.clip.width; 
			
		gVTToolTipText = inText;
	    docEle.innerHTML = inText;
		
		topP = gVTToolTipMouseY + 20; 
		leftP = gVTToolTipMouseX - 10; 
		if (leftP < 2) 
			leftP = 2; 
		else if (leftP + edgeWidth > windowWidth) 
			leftP -= edgeWidth/2; 
		leftP += 'px';
		topP += 'px';  
		docStyle.left = leftP; 
		docStyle.top = topP; 
		gVTToolTipToShow = true;
		setTimeout(vtRevealToolTip, kVTToolTipShowDelay);
	}
}

function vtRevealToolTip()
{
    if (gVTToolTipToShow)
    {
		docEle = document.getElementById("tgToolTip"); 
		docEle.style.visibility = "visible";
        gVTToolTipToShow = false;
    }
}

function vtHideToolTip()
{
	if (document.getElementById) 
	{
		docEle = document.getElementById("tgToolTip"); 
		
		gVTToolTipToShow = false;
		
		if (vtToolTipShown()) 
		{ 
			docEle.style.visibility = "hidden"; 
			gVTToolTipText = "";
		} 
	}
}

var gVTToolTipMouseX = 0;
var gVTToolTipMouseY = 0;
var gVTToolTipText = "";
var gVTToolTipToShow = false;

function vtSetMouse(e)
{
    var evt;
    
    evt = e || window.event;
    gVTToolTipMouseX = evt.clientX;
    gVTToolTipMouseY = evt.clientY;
}

function vtToolTipInitialize()
{
    if (window.addEventListener)
        document.addEventListener("mousemove", vtSetMouse, false);
    else
        document.attachEvent("onmousemove", vtSetMouse);
}

