//Pop-it menu- By Dynamic Drive
//For full source code and more DHTML scripts, visit http://www.dynamicdrive.com
//This credit MUST stay intact for use

/*
var linkset=new Array()
//SPECIFY MENU SETS AND THEIR LINKS. FOLLOW SYNTAX LAID OUT

linkset[0]='<div class="menuitems"><a href="fp_lehrg.html">Lehrgänge&nbsp;und&nbsp;Umschulungen</a></div>'
//linkset[0]+='<hr>' //Optional Separator
linkset[0]+='<div class="menuitems"><a href="fp_seminare.html">Seminare</a></div>'
linkset[0]+='<div class="menuitems"><a href="fp_mediz.html">Arbeitsmedizin</a></div>'

linkset[1]='<div class="menuitems"><a href="fp_sicherheit.html">Arbeitssicherheit</a></div>'
linkset[1]+='<div class="menuitems"><a href="http://cnn.com">Menüpunkt A</a></div>'
linkset[1]+='<div class="menuitems"><a href="http://abcnews.com">Menüpunkt B</a></div>'
//linkset[1]+='<hr>' //Optional Separator
linkset[1]+='<div class="menuitems"><a href="http://www.washingtonpost.com">Menüpunkt C</a></div>'
*/

////No need to edit beyond here
var ie4=document.all&&navigator.userAgent.indexOf("Opera")==-1
var ns6=document.getElementById&&!document.all
var ns4=document.layers
var aktuelle_x_position;

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
			obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj)
{
	var curtop = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curtop += obj.offsetTop
			obj = obj.offsetParent;
		}
	}
	else if (obj.y)
		curtop += obj.y;
	return curtop;
}

function test(item)
{
	//alert(item.offsetLeft + " / " + item.offsetParent);
	alert(findPosX(item) + " / " + findPosY(item));
}



function showmenu(e,linkset_index, anker)
{
	which = eval("linkset["+linkset_index+"]");

	if (!document.all&&!document.getElementById&&!document.layers)
		return

	clearhidemenu()

	menuobj=ie4? document.all.popmenu : ns6? document.getElementById("popmenu") : ns4? document.popmenu : ""
	menuobj.thestyle=(ie4||ns6)? menuobj.style : menuobj

	if (ie4||ns6)
	menuobj.innerHTML=which
	else{
	menuobj.document.write('<layer name=gui bgColor=#E6E6E6 width=165 onmouseover="clearhidemenu()" onmouseout="hidemenu()">'+which+'</layer>')
	menuobj.document.close()
	}

	menuobj.contentwidth=(ie4||ns6)? menuobj.offsetWidth : menuobj.document.gui.document.width
	menuobj.contentheight=(ie4||ns6)? menuobj.offsetHeight : menuobj.document.gui.document.height
	eventX=ie4? event.clientX : ns6? e.clientX : e.x
	eventY=ie4? event.clientY : ns6? e.clientY : e.y
	
	if( aktuelle_x_position == null )
		aktuelle_x_position = menuobj.offsetTop+20;

	//Find out how close the mouse is to the corner of the window
	
	var rightedge=ie4? document.body.clientWidth-eventX : window.innerWidth-eventX;
	var bottomedge=ie4? document.body.clientHeight-eventY : window.innerHeight-eventY;
	var leftedge = eventX-(menuobj.contentwidth/2);

	//alert(leftedge);
	

	/*
	//if the horizontal distance isn't enough to accomodate the width of the context menu
	if (rightedge < menuobj.contentwidth)
	{
		//move the horizontal position of the menu to the left by it's width
		menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX-menuobj.contentwidth : ns6? window.pageXOffset+eventX-menuobj.contentwidth : eventX-menuobj.contentwidth
	}
	else if(leftedge < 0)
	{
		menuobj.thestyle.left=1;
	}
	else
	{
		//position the horizontal position of the menu where the mouse was clicked
		menuobj.thestyle.left=ie4? document.body.scrollLeft+eventX-(menuobj.contentwidth/2) : ns6? window.pageXOffset+eventX-(menuobj.contentwidth/2) : eventX
	}
	*/

	menuobj.thestyle.left = findPosX(anker);

	
	
	//alert(anker.style.height + " / " + anker.offsetTop);
	//menuobj.thestyle.left=ie4? document.body.scrollLeft+anker.offsetWidth : ns6? window.pageXOffset+eventX : eventX

	//same concept with the vertical position
	/*
	if (bottomedge<menuobj.contentheight)
	{
		menuobj.thestyle.top=ie4? document.body.scrollTop+eventY-menuobj.contentheight : ns6? window.pageYOffset+eventY-menuobj.contentheight : eventY-menuobj.contentheight
	}
	else
	{
		alert(event.clientY);
		menuobj.thestyle.top=ie4? document.body.scrollTop+event.clientY : ns6? window.pageYOffset+eventY : eventY
	}
	*/

	//alert(menuobj.offsetHeight);
	//alert(menuobj.offsetTop);

	//menuobj.thestyle.top=ie4? document.body.scrollTop+aktuelle_x_position : ns6? window.pageYOffset+aktuelle_x_position : eventY
	menuobj.thestyle.top = findPosY(anker)+18;
	
	menuobj.thestyle.visibility="visible"
	return false
}

function contains_ns6(a, b) 
{
	//Determines if 1 element in contained in another- by Brainjar.com
	while (b.parentNode)
		if ((b = b.parentNode) == a)
			return true;
	return false;
}

function hidemenu()
{
	if (window.menuobj)
		menuobj.thestyle.visibility=(ie4||ns6)? "hidden" : "hide"
}

function dynamichide(e)
{
	if (ie4&&!menuobj.contains(e.toElement))
		hidemenu()
	else if (ns6&&e.currentTarget!= e.relatedTarget&& !contains_ns6(e.currentTarget, e.relatedTarget))
		hidemenu()
}

function delayhidemenu()
{
	if (ie4||ns6||ns4)
	delayhide=setTimeout("hidemenu()",500)
}

function clearhidemenu()
{
	if (window.delayhide)
	clearTimeout(delayhide)
}

function highlightmenu(e,state)
{
	if (document.all)
		source_el=event.srcElement
	else if (document.getElementById)
		source_el=e.target
	if (source_el.className=="menuitems")
	{
		source_el.id=(state=="on")? "mouseoverstyle" : ""
	}
	else
	{
		while(source_el.id!="popmenu")
		{
			source_el=document.getElementById? source_el.parentNode : source_el.parentElement
			if (source_el.className=="menuitems")
			{
				source_el.id=(state=="on")? "mouseoverstyle" : ""
			}
		}
	}
}

if (ie4||ns6)
{
document.onclick=hidemenu
}
