// menu.js 
// provides functions to modify menu items.

// select the current sub-menu item's parent anchor
function SelectParent(HeadingID)
{
	if (CheckIsSelected(HeadingID))
		document.getElementById(HeadingID).className = "selected menu_hover";
	else
		document.getElementById(HeadingID).className = "menu_hover";
}

// deselect te current sub-menu items' parent anchor
function DeSelectParent(HeadingID)
{
	if (CheckIsSelected(HeadingID))
	{
		document.getElementById(HeadingID).className = "selected";
	}
	else
		document.getElementById(HeadingID).className = "";
}

// determine whether the item is selected or not..
function CheckIsSelected(HeadingID)
{
	var _m = "selected";
	var _s = document.getElementById(HeadingID).className.toLowerCase();
	var _c = 0;

	for (var i=0; i<_s.length; i++)
	{
		if (_m == _s.substr(i, _m.length))
			_c++;
	}

	return (_c);
}




sfHover = function() 
{
	var sfEls = document.getElementById("page_nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) 
	{
		sfEls[i].onmouseover=function() 
		{
			this.className+=" sfhover";
			
			// get the nested ul...
			nestedUL = this.getElementsByTagName('UL');
			if (nestedUL.length)
				nestedUL[0].style.left = findPosX(this) + 'px'; 

		}
		sfEls[i].onmouseout=function() 
		{
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");

			// get the nested ul...
			nestedUL = this.getElementsByTagName('UL');
			if (nestedUL.length)
				nestedUL[0].style.left = '-1000em';
		}
	}
}


/*
startList = function() 
{
	if (document.all && document.getElementById) 
	{
		navRoot = document.getElementById('page_nav');
		
		for (i = 0; i < navRoot.childNodes.length; i++) 
		{
			node = navRoot.childNodes[i];
			
			if (node.nodeName == 'LI') 
			{
				node.onmouseover = function() 
				{
					this.className += ' sfhover';
				
					// get the nested ul...
					nestedUL = this.getElementsByTagName('UL');
					if (nestedUL.length)
						nestedUL[0].style.marginLeft = findPosX(this) + 'px'; 
				}
				node.onmouseout=function() 
				{
					this.className = this.className.replace(' sfhover', '');
					
					// get the nested ul...
					nestedUL = this.getElementsByTagName('UL');
					if (nestedUL.length)
						nestedUL[0].style.marginLeft = findPosX(this) + 'px';
				}
			}
		}
	}
}
*/

function findPosX(obj)
{
	var curleft = 0;
	if (obj.offsetParent)
	{
		while (obj.offsetParent)
		{
			curleft += obj.offsetLeft
				obj = obj.offsetParent;
		}
	}
	else if (obj.x)
		curleft += obj.x;
	return curleft;
}
