		var currNode;
		var parNode;	
		var menuNode;

	function onOver(event, idEvent, id)
	{	
	  if((typeof(window.event) != "undefined"))
	  {  		  
		currNode = document.getElementById(id);
		parNode = currNode.parentNode;
		if(idEvent != '') 
		{
		menuNode = document.getElementById(idEvent);			
		menuNode.style.top = parNode.getBoundingClientRect().bottom - 2;
		menuNode.style.left = parNode.getBoundingClientRect().right - 73;
		menuNode.style.visibility = "visible";	
		parNode.style.border = "inset #0099FF 2px";
		}
		else
		{
		menuNode = null;	
		}

		parNode.onmouseout = onButtonOut;		
	  }
	}

	function onButtonOut(evt)
	{
		if(typeof(window.event) != "undefined")
		{
			newNode = window.event.toElement;
		if(parNode != newNode && menuNode!= newNode && !containsNode(parNode,newNode) && !containsNode(menuNode,newNode))
		  {
			  ResetControl();
		  }		 
		 else
		  {	
		  if(menuNode != null) 
		    {
		      menuNode.onmouseout = onMOut;
		    }
		  }
		}	
	}
	function onMOut(evt)
	{
		if(typeof(window.event) != "undefined")
		{
			newNode = window.event.toElement;
		if(parNode != newNode && menuNode!= newNode && !containsNode(menuNode,newNode))
		  {
			  ResetControl();
		  }
		}	
	}
	function ResetControl()
	{			
		    if(menuNode != null) 
		      {		
		      menuNode.style.visibility = "hidden";
			  parNode.style.border = "outset #0099FF 2px";
			  }
	}
	
	function containsNode(containerNode, testNode)
	{
	 if((testNode != null) && (containerNode != null))
	 {
		while (testNode.parentNode)
		{
			testNode = testNode.parentNode;
			if (testNode == containerNode)
			return true;
		}
	 }
		return false;
	}
	
	
	


