var selectedMenu = -1;
var selectedMainBar  = -1;
var selectedMainLink = -1;
var PreviousPage = -1;
var fLevelNr = '-1';
var sLevelNr = '-1';
var PreviousPageIsSpecialPage = false;
var selectedPageIsSpecialPage = false;

function SubMenuCancelMouseEvents(e)
{
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }
}
	
function TableCancelMouseEvent(e)
{
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }
}

function BodyDivEnter(fLevel,sLevel)
{
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }
    
    if (fLevel != '-1')
    {
		fLevelNr = fLevel;
    }
    
    if (sLevel != '-1')
    {
		sLevelNr = sLevel;
    }    
    
	if (selectedMainLink > -1 && selectedMenu == -1)
	{
		KillMenu(selectedMainLink,fLevelNr,sLevelNr,PreviousPageIsSpecialPage);
	}

	window.setTimeout('KillMenu('+selectedMainLink+','+fLevelNr+','+sLevelNr+','+PreviousPageIsSpecialPage+')',500);
	
	selectedMainLink = -1;
	//selectedPageIsSpecialPage = 'false';
	//PreviousPageIsSpecialPage = 'false';

}
	
function CallSubmenu(pagenr,fLevel,sLevel,IsSpecialPage)
{
	KillMenu(PreviousPage,fLevel,sLevel,PreviousPageIsSpecialPage);
	
	var senderObject = document.getElementById("spn"+pagenr);
	
	if (senderObject != null)
	{	
		var LeftDist	= findPosX(senderObject);
		var TopDist		= findPosY(senderObject);//+object.offsetHeight;					
			
		//zoek de bij een menu-item behorend submenu paneel op
		var MenuDiv		= document.getElementById("pnl"+pagenr);
			
		//menu alleen bewerken als dit bestaat
		if(MenuDiv!=null) 
		{
			MenuDiv.style.left = (LeftDist+156) + 'px';
			MenuDiv.style.top  = (TopDist-3) + 'px';

			MenuDiv.style.display = 'block';
			
			selectedMenu = pagenr;	
		}			
					
	}			
}

function KillMenu(pagenr,fLevel,sLevel,IsSpecialPage)
{
	
	if (pagenr >= 0 && selectedMainLink != pagenr)
	{
		selectedMenu = -1;
		
		var pnlObject = document.getElementById("pnl"+pagenr);
		
		if (pnlObject != null)
		{
			pnlObject.style.display = 'none';
		}
		
		if (selectedMainBar != pagenr && fLevel != pagenr)
		{
			//zoek hoofdmenu link op en deselecteer deze
			var spnObject = document.getElementById("spn"+pagenr);
			
			if (spnObject != null)
			{
				if (IsSpecialPage==true)
				{	
					spnObject.className = "spnMainMenuItemHighlight";
				}
				else
				{
					spnObject.className = "spnMainMenuItem";
				}
			}	
		
			//zoek image op
			var imgObject = document.getElementById("img"+pagenr);
			
			if (imgObject != null)
			{
				if (IsSpecialPage==true)
					imgObject.src = "/images/triWhite.gif";
				else
					imgObject.src = "/images/triOrange.gif";
			}
		}
	
	}	
}	
			
		
//http://www.quirksmode.org/js/findpos.html#
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;
}	

//http://www.quirksmode.org/js/findpos.html#
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 ChangeSubMenuItem(object,isHighlight)
{			
	if (isHighlight)
	{		
		object.className="spnSubMenuItemSelected";
		object.style.cursor="pointer";			
	}
	else
	{ 
		object.className="spnSubMenuItem";		
	}				
}
	
function MenuBarEnter(e,pagenr,fLevel,sLevel,IsSpecialPage)
{
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }
      
    if (pagenr != null)
	{			
		selectedMainBar = pagenr;
		
		if (selectedMainBar != selectedMainLink)
		{
			KillMenu(selectedMainLink,fLevel,sLevel,PreviousPageIsSpecialPage);
		}	
	}
}

function MenuBarLeave(e,pagenr,IsSpecialPage)
{
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }

    selectedMainBar = -1;
    //selectedPageIsSpecialPage = IsSpecialPage;
    
    PreviousPageIsSpecialPage = IsSpecialPage;
    
}	
		
function MenuLinkEnter(e,pagenr,fLevel,sLevel,IsSpecialPage)
{    	
	//cancel bubble event code
	if (window.event) 
	{
		if (!window.event.cancelBubble) 
		{
			window.event.cancelBubble = true;
		}
    }
    else
    {
            try
            { 
				e.preventDefault();
				e.stopPropagation();
            }
            catch(err){}            
    }
    
    if (fLevel != '-1')
    {
		fLevelNr = fLevel;
    }
    
    if (sLevel != '-1')
    {
		sLevelNr = sLevel;
    } 
       
    if (pagenr != null)
	{			
		//zoek span op
		var spnObject = document.getElementById("spn"+pagenr);
		
		if (spnObject != null)
		{
			spnObject.style.cursor = "pointer";
			
			PreviousPage = selectedMainLink;
			PreviousPageIsSpecialPage = selectedPageIsSpecialPage;
			
			selectedMainBar  = pagenr;
			selectedMainLink = pagenr;
			
			selectedPageIsSpecialPage  = IsSpecialPage;
			
			//zoek image op
			var imgObject = document.getElementById("img"+pagenr);
			
			if (imgObject != null)
			{
				if (IsSpecialPage==true)
					imgObject.src = "/images/triOrange.gif";
				else
					imgObject.src = "/images/triWhite.gif";
			}
				
			//zoek nieuwe span op
			var spnObject = document.getElementById("spn"+pagenr);
			
			if (spnObject != null)
			{				
				if (IsSpecialPage==true)
					spnObject.className = "spnMainMenuItem";
				else
					spnObject.className = "spnMainMenuItemHighlight";
			}
						
			CallSubmenu(pagenr,fLevel,sLevel,IsSpecialPage);
		}		
	} 	
}
