/*
	Zeigt eine Mouse-Over-Popup-Box an.

	Verwendungsbeispiel:
	onmouseover="mdxShowToolTip(this, '<div style=\'border:1px solid #000;\'><img src=\'%db02%\'></div>');" onmouseout="mdxHideToolTip();"
*/

var mdxToolTip = null;

function mdxShowToolTip(which, html, xOffset, yOffset)
{
	if (mdxToolTip != null)
	{
		document.body.removeChild(mdxToolTip);
		mdxToolTip = null;
	}

	which.onmousemove = function (e)
	{
		if (mdxToolTip == null)
		{
			var div = document.createElement("div");
			div.innerHTML = html
			div.style.position = "absolute";
			div.style.zIndex = "100000";
			div.style.visibility= "hidden";
			mdxToolTip = document.body.appendChild(div);
		}

		var x, y;

		if (!e)
		{
			x = event.clientX + getScrollX();
			y = event.clientY + getScrollY();
		}
		else
		{
			x = e.pageX;
			y = e.pageY;
		}
		if (y + mdxToolTip.clientHeight > getScrollY() + getViewportHeight())
		{
			y = getScrollY() + getViewportHeight() - mdxToolTip.clientHeight;
		}

		x += (xOffset != undefined ? xOffset : 10);
		y += (yOffset != undefined ? yOffset : 0);

		mdxToolTip.style.left = x + "px";
		mdxToolTip.style.top = y + "px";
		mdxToolTip.style.visibility = "visible";

		function getScrollX()
		{
			if (window.pageXOffset)
			{
				return window.pageXOffset;
			}
			else if (document.documentElement && document.documentElement.scrollLeft)
			{
				return document.documentElement.scrollLeft;
			}
			else if (document.body)
			{
				return document.body.scrollLeft;
			}
			else
			{
				return 0;
			}
		}

		function getScrollY()
		{
			if (window.pageYOffset)
			{
				return window.pageYOffset;
			}
			else if (document.documentElement && document.documentElement.scrollTop)
			{
				return document.documentElement.scrollTop;
			}
			else if (document.body)
			{
				return document.body.scrollTop;
			}
			else
			{
				return 0;
			}
		}

		function getViewportHeight()
		{
			if (window.innerHeight)
			{
				return window.innerHeight;
			}
			else if (document.documentElement && document.documentElement.clientHeight)
			{
				return document.documentElement.clientHeight;
			}
			else if (document.body)
			{
				return document.body.clientHeight;
			}
			else
			{
				return 0;
			}
		}
	}
}

function mdxHideToolTip()
{
	if (mdxToolTip != null)
	{
		document.body.removeChild(mdxToolTip);
		mdxToolTip = null;
	}
}