function ResetTopMargins()
{
	var displayElement = document.getElementById("MenuNodes");
	
	for(u = 0; u < displayElement.childNodes.length; u++)
	{	
		var secondLevelNode = displayElement.childNodes[u];				
		
		if(secondLevelNode.tagName)
		{
		
			var list = secondLevelNode.childNodes[3];	
			if(!list)
			{
				list = secondLevelNode.childNodes[2];	
			}
		
			list.style.top = "";
			for(i = 0; i < list.childNodes.length; i++)
			{
				var thirdLevelNode = list.childNodes[i];
				var list1 = thirdLevelNode.childNodes[3];				
				if(!list1)
				{
					list1 = thirdLevelNode.childNodes[2];	
				}		
				if(!list1)
				{		
					list1 = secondLevelNode.childNodes[1];	
				}
							
				list1.style.top = "";				
			
			}
				
		}
	}
}


function RepositionFirstLevel(menuItem)
{
	PositionSecondLevelNodes(menuItem);	
}

function PositionSecondLevelNodes(secondLevelNode)
{
	var list = secondLevelNode.childNodes[3];	
	if(!list)
	{
		list = secondLevelNode.childNodes[2];	
	}
	
	if (list)
	{
		//list.style.top = "";
		RepositionElements(list);

		for(c = 0; c < list.childNodes.length; c++)
		{		
			if(list.childNodes[c].tagName == "LI")
			{							
				PositionThirdLevelNodes(list.childNodes[c]);
			}
		}

	}	
}

function PositionThirdLevelNodes(thirdLevelNode)
{	
	var list1 = thirdLevelNode.childNodes[3];	
	if(!list1)
	{
		list1 = thirdLevelNode.childNodes[2];	
	}	
	
	if(!list1)
	{		
		list1 = secondLevelNode.childNodes[1];	
	}
	
	if(list1.style.display == "")
	{			
		//list1.style.top = "";
		RepositionElements(list1);	
	}

}



function RepositionElements(element, sectionId)
{
	if(element)
	{		
		var itemToShift;		
		
		try
		{
			itemToShift = document.getElementById(element.id);
		}	
		catch (e)
		{
			return false;
		}
		
		//Set to circumvent IE 6 Autohover Bug		
		element.style.display = "block";
		var elementDimensions = GetElementDimensions(element.id);
		element.style.display = "";	
		
		var windowDimensions = GetWindowDimensions();
		
		var itemCoords = FindPos(itemToShift);		
				
		var total = itemCoords[1] + elementDimensions.y;
		if(total > windowDimensions.y)
		{
			if(itemToShift.style.top == "")
			{
				
				// item new coords are negative set top = 0 action on 4/2/2008
				
				var difference = total - windowDimensions.y;
			
				var distance = itemToShift.style.top - (difference + 10);				
				
				var offset = difference - itemCoords[1];
				if(offset > 0 && elementDimensions.y > windowDimensions.y)
				{	
					distance = distance + (offset + 5);
				}									
														
				itemToShift.style.top = distance + "px";										
			}				
		}							
	}
}