<!-- Pulldown Menue -->
<!--script language="JavaScript"-->
	var m_bFreezeLayer = false;
	var m_pCurrentMenuTop = null;
	var m_pCurrentMenuLayer = null;
	var m_pFutureMenuLayer = null;

	var m_strBgColorOutMenuTop = "";
	var m_strBgColorOverMenuTop = "";

	var m_strBgColorOutMenuItem = "#596e8d";
	var m_strBgColorOverMenuItem = "#7A91B2";

	var m_strColorOutMenuItem = "#000000";
	var m_strColorOverMenuItem = "#FF0000";
	
	var m_bHideElements = false;

	function init()
	{
		var pTD; // effect in NS6: without this we got problems in size (cellpadding) ... ;-)
		
		pTD = document.getElementById( "MenuTop" );
		pTD.style.background = m_strBgColorOutMenuTop;  

		pTD = document.getElementById( "MenuTop2" );
		pTD.style.background = m_strBgColorOutMenuTop;

		pTD = document.getElementById( "MenuTop3" );
		pTD.style.background = m_strBgColorOutMenuTop;
		
		pTD = document.getElementById( "MenuTop4" );
		pTD.style.background = m_strBgColorOutMenuTop; 
	}

	function EventOnMenuTop( in_bOver, in_pSource, in_strID, in_strDropDown )
	{
		var pLayer = document.getElementById( in_strDropDown );
		var pMenuItem = document.getElementById( in_strID );

		if( in_bOver == true )
		{
			SetMenuBox( pLayer, pMenuItem, in_pSource );
		}
		else
		{
			// we need to do it this way, because the user could still
			// be inside the menu with his pointer
			TryToHideCurrentMenuBox();
		}
	}

	function EventOnMenuTopSimple( in_bOver, in_pSource )
	{
		if( in_bOver == true )
		{
			in_pSource.style.background = "#596e8d"; 
			in_pSource.style.color = "#596e8d"; 
			in_pSource.style.cursor = "hand"; 
		}
		else
		{
			in_pSource.style.background = "#596e8d"; 
			in_pSource.style.color = "#596e8d"; 
			in_pSource.style.cursor = "default"; 
		}
	}		
	
	function EventOnMenuItem( in_bOver, in_pSource )
	{ 
		// if (!in_pSource.contains(event.fromElement)) 

		if( in_bOver == true )
		{
			in_pSource.style.cursor = 'hand'; 
			in_pSource.style.background = m_strBgColorOverMenuItem;
			in_pSource.style.color = m_strColorOverMenuItem;
		}
		else
		{
			in_pSource.style.cursor = 'default'; 
			in_pSource.style.background = m_strBgColorOutMenuItem;
			in_pSource.style.color = m_strColorOutMenuItem;
		}
	}

	function EventClickOnMenuItem( in_strURL )
	{
		window.location.href = in_strURL;
	}

	function EventOnMenuBox( in_bOver, in_pSource )
	{
		m_bFreezeLayer = in_bOver;

		if( in_bOver == true )
			m_pFutureMenuLayer = in_pSource;
		else
			TryToHideCurrentMenuBox();
	}

	function TryToHideCurrentMenuBox()
	{
		m_pFutureMenuLayer = null;
		setTimeout( "ShutdownMenu()", 80 );
	}

	function ShutdownMenu()
	{
		if( m_pFutureMenuLayer == null && m_bFreezeLayer == false )
			SetMenuBox( null, null, null );
	}

	function SetMenuBox( in_pMenuBox, in_pDockingItem, in_pTopMenu )
	{
		// alert( "m_pCurrentMenuLayer != null: " + (m_pCurrentMenuLayer != null)  + "m_pCurrentMenuLayer != in_pMenuBox: " + (m_pCurrentMenuLayer != in_pMenuBox)  );

		// 1. Hide a layer, if we do not need it any more
		if( m_pCurrentMenuLayer != null && m_pCurrentMenuLayer != in_pMenuBox )
		{
			m_pCurrentMenuLayer.style.visibility = "hidden";
			m_pCurrentMenuTop.style.background = m_strBgColorOutMenuTop; 
			m_pCurrentMenuTop.style.color = "000000"; 
			m_pCurrentMenuTop.style.cursor = "default"; 
			// document.body.bgColor="red";
		}

		// 2. If this is the last call, show form items
		if( in_pMenuBox == null && m_pCurrentMenuLayer != null )
		{
			HideAllFormElements( false );
		}
		// 3. If this is the first call, hide form items
		else if( in_pMenuBox != null && m_pCurrentMenuLayer == null )
		{
			HideAllFormElements( true );
		}

		// 4. Show a layer, if it is new
		if( in_pMenuBox != null && m_pCurrentMenuLayer != in_pMenuBox )
		{
			var x = 0;
			var y = 0;

			for( var pCurrent = in_pDockingItem; pCurrent != null; pCurrent = pCurrent.offsetParent )
			{
				x += pCurrent.offsetLeft;
			y += pCurrent.offsetTop;
			}

			in_pMenuBox.style.left = x;
			in_pMenuBox.style.top = y;
			in_pMenuBox.style.visibility = "visible";
			
			in_pTopMenu.style.background = m_strBgColorOverMenuTop; 
			in_pTopMenu.style.color = "FF0000"; 
			in_pTopMenu.style.cursor = "default"; 
		}

		m_pCurrentMenuTop = in_pTopMenu;
		m_pCurrentMenuLayer = in_pMenuBox;
		m_pFutureMenuLayer = in_pMenuBox;
	}

	function HideAllFormElements( in_bHide )
	{
		if( m_bHideElements == true )
		{
			var j;
			var pForm;
			var strVisible;

			if( in_bHide == true )
				strVisible = "hidden";
			else
				strVisible = "visible";

			for( var i = 0; i < document.forms.length; i++ )
			{
				pForm = document.forms.item( i );

				for( j = 0; j < pForm.elements.length; j++ )
					pForm.elements.item( j ).style.visibility = strVisible;
			}
		}
	}
<!--/script-->