﻿/*----------------------------------------------------------------------------------
	Script:					Menu.js
	Author:					John Bradnam
	Created:				070812 JLB
	Copyright:			Republicorp P/L
	Purpose:				Handles flyout menu
	History:
	--------------------------------------------------------------------------------*/
	
var blnMenuVisible = false;

//----------------------------------------------------------------------------
// Function:  ShowFlyOut
// Purpose:   Displays the menu division.
//----------------------------------------------------------------------------

function ShowFlyOut(strMenuId, objEvent)
{
	var objMenu = document.getElementById(strMenuId);
	if ((objMenu != null) && (!blnMenuVisible)) {
		objMenu.style.visibility = "visible";
		blnMenuVisible = true;
	}
} //ShowFlyOut

//----------------------------------------------------------------------------
// Function:  HideFlyOut
// Purpose:   Hides the menu division.
//----------------------------------------------------------------------------

function HideFlyOut(strMenuId, objEvent)
{
	if (objEvent == null)
		objEvent = event;
	var objMenu = document.getElementById(strMenuId);
	if ((objMenu != null) && (blnMenuVisible)) {
		var intMouseX = objEvent.clientX;
		var intMouseY = objEvent.clientY;
		var intX1 = objMenu.offsetLeft + objMenu.parentNode.offsetLeft - 2;
		var intY1 = objMenu.offsetTop + objMenu.parentNode.offsetTop;
		var intX2 = intX1 + objMenu.offsetWidth;
		var intY2 = intY1 + objMenu.offsetHeight;
		var intY1 = intY1 + 4;
		var intY2 = intY2 - 2;
/*		
		var s="";
		s+="Mouse:" + intMouseX + ", " + intMouseY + "  ";
		s+="X1,Y1:" + intX1 + ", " + intY1 + "  ";
		s+="X2,Y2:" + intX2 + ", " + intY2 + "  ";
		window.status = s;
		var objStatus = document.getElementById("status");
		if (objStatus != null)
			objStatus.innerHTML = s;
*/		
		if ((intMouseX < intX1) || (intMouseX > intX2) || (intMouseY < intY1) || (intMouseY > intY2)) {
			objMenu.style.visibility = "hidden";
			blnMenuVisible = false;
		}
	}
} //HideFlyOut
