var clientY = 0;
var clientX = 0;
var iframetop = 0;
var iframeleft = 0;
var scroll = 0;
var visible = false;
var toolbox = null;

function linktooltipp() {
	var links = document.getElementsByTagName("a");
	for (i=0; i < links.length; i++) {
		if (links[i].className.toLowerCase().indexOf("tooltipp")>= 0 || links[i].className.toLowerCase().indexOf("tooltippleer")>= 0)
		{
			links[i].onmouseover= function(Ereignis){ showbox('', this.href, Ereignis);};
			links[i].onmouseout= hidebox;
			links[i].onclick= function(){ return false;};
			if (links[i].innerHTML.length < 1) {
				links[i].innerHTML = "&nbsp;";
			}
		}
	}
}

function linktooltippiframe() {
	var links = document.getElementsByTagName("a");
	for (i=0; i < links.length; i++) {
		if (links[i].className.toLowerCase().indexOf("tooltipp")>= 0 || links[i].className.toLowerCase().indexOf("tooltippleer")>= 0)
		{
			links[i].onmouseover= function(Ereignis){ showboxIframe('', this.href, Ereignis);};
			links[i].onmouseout= hidebox;
			links[i].onclick= function(){ return false;};
			if (links[i].innerHTML.length < 1) {
				links[i].innerHTML = "&nbsp;";
			}
		}
	}
	
	var divs = top.document.getElementsByTagName("body")[0].getElementsByTagName("div");
	for(i=0; i<divs.length; i++)
	{
		if(divs[i].id.indexOf("LayerContent") >= 0)
		{			
			iframetop = parseInt(divs[i].style.top);
			iframeleft = parseInt(divs[i].style.left);
		}
	}
}

function showbox(name, url, Ereignis) {
	mousemove(Ereignis);
	document.onmousemove = mousemove;
	if(toolbox == null)
	{
		toolbox = document.createElement("div");
		toolbox.style.position = "absolute";
		toolbox.style.display = "none";
		toolbox.style.zIndex = 10;
		document.getElementsByTagName("body")[0].appendChild(toolbox);
	}
	toolbox.innerHTML = "";
	loadBox(url);
		
	if (toolbox != null) {
		toolbox.style.top = (0 + clientY + scroll) + "px";
		toolbox.style.left = (20 + clientX) + "px";

		if (toolbox.style.display != "block")
			toolbox.style.display = "block";

		visible = true;
	}
}

function showboxIframe(name, url, Ereignis) {
	mousemoveIframe(Ereignis);
	document.onmousemove = mousemoveIframe;
	if(toolbox == null)
	{
		toolbox = top.document.createElement("div");
		toolbox.style.position = "absolute";
		toolbox.style.display = "none";
		toolbox.style.zIndex = 10;
		top.document.getElementsByTagName("body")[0].appendChild(toolbox);
	}
	toolbox.innerHTML = "";
	loadBox(url);
	
	if (toolbox != null) {
		toolbox.style.top = (35 + clientY + scroll + iframetop) + "px";
		toolbox.style.left = (25 + clientX + iframeleft) + "px";

		if (toolbox.style.display != "block")
			toolbox.style.display = "block";

		visible = true;
	}
}

function loadBox(url) {
	var req = getXMLHttpRequest();

	// anfrage erstellen (GET, url ist localhost,
	// request ist asynchron
	req.open("GET", url, true);

	// Beim abschliessen des request wird diese Funktion ausgeführt
	req.onreadystatechange = function() {
		switch (req.readyState) {
		case 4:
			if (req.status != 200) {
			} else {
				var text = req.responseText;
				text = text.substring(text.indexOf("<divtoolbox>") + 12, text.indexOf("</divtoolbox>"));
				toolbox.innerHTML = text;
			}
			break;

		default:
			return false;
			break;
		}
	};

	req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
	req.send(null);
}

function hidebox() {
	document.onmousemove = "";
	if (toolbox != null) {
		toolbox.style.display = "none";
		visible = false;
	}
}

function mousemove(Ereignis) {
	if (!Ereignis)
		Ereignis = window.event;

	if (document.all) {
		clientY = Ereignis.clientY;
		clientX = Ereignis.clientX;
		if ((clientX + 200) > document.body.offsetWidth)
			clientX = clientX - 235;
	} else { 
		clientY = Ereignis.pageY;
		clientX = Ereignis.pageX;
		if ((clientX + 200) > window.innerWidth - 40)
			clientX = clientX - 235;
	}
	
	if(document.all)
		scroll = document.documentElement.scrollTop;

	if (visible && toolbox != null) {
		toolbox.style.top = (0 + clientY + scroll) + "px";
		toolbox.style.left = (20 + clientX) + "px";
	}
}

function mousemoveIframe(Ereignis) {
	if (!Ereignis)
		Ereignis = window.event;

	if (document.all) {
		clientY = Ereignis.clientY;
		clientX = Ereignis.clientX;
		if ((clientX + 200) > top.document.body.offsetWidth)
			clientX = clientX - 235;
	} else { 
		clientY = Ereignis.pageY;
		clientX = Ereignis.pageX;
		if ((clientX + 200) > window.innerWidth - 40)
			clientX = clientX - 235;
	}
	if(document.all)
		scroll = top.document.documentElement.scrollTop;

	if (visible && toolbox != null) {
		toolbox.style.top = (35 + clientY + scroll + iframetop) + "px";
		toolbox.style.left = (25 + clientX + iframeleft) + "px";
	}
}