document.write("<scr" + "ipt language='JavaScript' SRC='/js/fn_getElement.js' type='text/javascript'><\/scr" + "ipt>");
document.write("<scr" + "ipt language='JavaScript' SRC='/js/lib_classList.js' type='text/javascript'><\/scr" + "ipt>");
/*document.write("<scr" + "ipt language='JavaScript' SRC='/js/fn_getElementsByClassName.js' type='text/javascript'><\/scr" + "ipt>");*/

function contains (container, containee) {
	while (containee) {
		if (container == containee) {
			return true; }
		containee = containee.parentNode;
	}
	return false;
}
function mouseLeaves (element, evt) {
	if ( typeof evt.toElement != 'undefined' && evt.toElement && typeof element.contains != 'undefined' ) {
		return !element.contains(evt.toElement);
	} else if ( typeof evt.relatedTarget != 'undefined' && evt.relatedTarget ) {
		return !contains(element, evt.relatedTarget);
	}
}

function nextElement(elem) {
	do { elem = elem.nextSibling; 
	} while (elem && elem.nodeType != 1);
	return elem;		
}

function prevElement(elem) {
	do { elem = elem.previousSibling; 
	} while (elem && elem.nodeType != 1);
	return elem;		
}

function setSubNav(pgid) {
	var elTab = getElement('navtab_' + pgid),
		elMenu = getElement('dropmenu_' + pgid),
		elLink = getElement('navlink_' + pgid);
	if ( !elMenu || !elTab || !elLink ) return;

	var useLastStyle = 1000 - elTab.offsetLeft < 240,
		useLastNarrowStyle = 1000 - elTab.offsetLeft < 100,
		useFirstStyle = elTab.offsetLeft == 0,
		lftLastOffset = useLastNarrowStyle ? 160 : 222,
		elPnav = getElement('pNav'),
		setLeft = !useLastStyle ? elTab.offsetLeft + elPnav.offsetLeft - 2 : 1000 - lftLastOffset,
		nextSib = nextElement(elTab),
		prevSib = prevElement(elTab),
		i;

	if (useFirstStyle) setLeft = 0;
	setLeft += getElement('pNavContainer').offsetLeft;

	elMenu.style.left = setLeft  + 'px';
	if ( useLastStyle ) addClass(elMenu, "last");
	else if ( useFirstStyle ) addClass(elMenu, "first");
	if ( useLastNarrowStyle ) addClass(elMenu, "narrow");

	elMenu.style.display = 'block';
	addClass(elLink, 'over');

	if ( nextSib && containsClass(nextSib, 'sel') ) addClass(nextSib, "nosel");
	if ( prevSib && useLastStyle && containsClass(prevSib, 'sel') ) addClass(prevSib, "nosel");

}

function removeSubNav(e, pgid) {
	var elMenu = getElement('dropmenu_' + pgid),
		elLink = getElement('navlink_' + pgid),
		liAry =  getElement('pNav').getElementsByTagName('li'), // getElementsByClassName('nosel', 'li', getElement('pNav')),
		i;
	if ( !elMenu || !elLink ) return;

	if ( mouseLeaves(elMenu, e)) { 
		elMenu.style.display = 'none';
		removeClass(elLink, 'over'); 
		for ( i=0; i < liAry.length; i++ ) {
			removeClass(liAry[i], "nosel");
		}
	}
}

