// Functions used in Drop Down Nav 
// Amended script based on an original (c) 2006-2007 javascript-array.com


// layer display functions


function showHide(panelID)
 {
  var panel = document.getElementById(panelID);
  if (panel != null)
	{
	if (panel.style.visibility == "hidden")
	  {
		panel.style.display = "block";
		panel.style.visibility = "visible";
	  } else {
		panel.style.display = "none";
		panel.style.visibility = "hidden";					
	}
 }
}

function showLayer(layerId)
 {
  var panel = document.getElementById(layerId);
  if (panel != null)
	{
    panel.style.Top = ((event.clientY  + document.body.scrollTop) + 100);
	panel.style.left = ((event.clientX + document.body.scrollLeft) + 10);
	
	panel.style.display = "inline";
	panel.style.visibility = "visible";
    }
}

function hideLayer(layerId)
 {
  var panel = document.getElementById(layerId);
  if (panel != null)
	{
	panel.style.display = "none";
	panel.style.visibility = "hidden";
    }
}


var TimeOut         = 300;
var currentLayer    = null;
var currentitem     = null;
var currentLayerNum = 0;
var noClose         = 0;
var closeTimer      = null;

// Open Hidden Layer
function mopen(n)
{
    var l  = document.getElementById("menu"+n);
    var mm = document.getElementById("mmenu"+n);
	
    if(l)
    {
        mcancelclosetime();
        l.style.visibility='visible';

        if(currentLayer && (currentLayerNum != n))
            currentLayer.style.visibility='hidden';

        currentLayer = l;
        currentitem = mm;
        currentLayerNum = n;			
    }
    else if(currentLayer)
    {
        currentLayer.style.visibility='hidden';
        currentLayerNum = 0;
        currentitem = null;
        currentLayer = null;
	}
}

// Turn On Close Timer
function mclosetime()
{
    closeTimer = window.setTimeout(mclose, TimeOut);
}

// Cancel Close Timer
function mcancelclosetime()
{
    if(closeTimer)
    {
        window.clearTimeout(closeTimer);
        closeTimer = null;
    }
}

// Close Showed Layer
function mclose()
{
    if(currentLayer && noClose!=1)
    {
        currentLayer.style.visibility='hidden';
        currentLayerNum = 0;
        currentLayer = null;
        currentitem = null;
    }
    else
    {
        noClose = 0;
    }

    currentLayer = null;
    currentitem = null;
}

// Close Layer Then Click-out
document.onclick = mclose; 