var debug = false;var viewportWidth = 0;var viewportHeight = 0;var scrollOffsetX = 0;var scrollOffsetY = 0;var menuEvents = new Array();var MOUSE_OVER_DELAY = 50;var MOUSE_OUT_DELAY = 300;var menuItems = new Array();var iFrameHackEnabled = false;function MenuItem(itemId) {	this.id = itemId;	this.event = 0;}Array.prototype.getMenuItemById = getMenuItemById2function getMenuItemById2(someId) {	for (var i=0; i < menuItems.length; i++) {		if (menuItems[i].id == someId) {			return menuItems[i];		}	}	return null;}function activateMenu(nav) {	var navroot = document.getElementById(nav);	if(navroot==null) return;		var lis = navroot.getElementsByTagName('LI');	var menuNo = 1;	for (var i=0; i<lis.length; i++) {		var children = lis[i].getElementsByTagName('UL');		var child = children[0];		if(child && child.tagName == 'UL') {			lis[i].className += ' hasSubmenus';			lis[i].id =  nav + '_' + menuNo++;			var menuItem = new MenuItem(lis[i].id);			menuItems = menuItems.concat(menuItem);			if (nav=='primeMenuTop') {				lis[i].onmouseover = function() {					var eventIndex = getMenuLevel(this) * 2 - 1;					var menuItem = menuItems.getMenuItemById(this.id);					if (menuItem) {						clearTimeout(menuItem.event);					}					if (menuEvents[eventIndex]) {						clearTimeout(menuEvents[eventIndex]);					}					menuItem.event = setTimeout('mouseOverTopMenu(\''+this.id+'\')', MOUSE_OVER_DELAY);					menuEvents[eventIndex] = menuItem.event;					return true;				}			} else {				lis[i].onmouseover = function() {					var eventIndex = getMenuLevel(this) * 2 - 1;					var menuItem = menuItems.getMenuItemById(this.id);					if (menuItem) {						clearTimeout(menuItem.event);					}					menuItem.event = setTimeout('mouseOverMenu(\''+this.id+'\')', MOUSE_OVER_DELAY);					menuEvents[eventIndex] = menuItem.event;					return true;				}			}			lis[i].onmouseout = function() {				var eventIndex = getMenuLevel(this) * 2;				var menuItem = menuItems.getMenuItemById(this.id);				if (menuItem) {					clearTimeout(menuItem.event);				}				menuItem.event = setTimeout('mouseOutMenu(\''+this.id+'\')', MOUSE_OUT_DELAY);				menuEvents[eventIndex] = menuItem.event;				return true;			}		}	}}function mouseOverTopMenu(someElementId) {	window.focus();//	document.forms['search'].Search.focus();	var someElement = document.getElementById(someElementId);	var subMenuUL = someElement.getElementsByTagName('UL')[0];	measureScrollOffset();	subMenuUL.style.display='block';	var parentElement = subMenuUL.parentNode;	if (parentElement.parentNode.id == 'primeMenuTop') { // Main menu item in the top menu.		var layerLeft = parentElement.offsetLeft;		var layerWidth = getElementWidth(subMenuUL);		var difference = viewportWidth-layerLeft-layerWidth+scrollOffsetY;		var leftSide = getAbsolutePositionLeft(parentElement);		subMenuUL.style.left = leftSide+'px';		subMenuUL.style.top = getAbsolutePositionTop(parentElement)+getElementHeight(parentElement)+'px';	} else {		subMenuUL.style.left = '150px';		if (document.all && subMenuUL.currentStyle) { // MSIE only			subMenuUL.style.top = parentElement.offsetTop-1+'px';		} else {			subMenuUL.style.top = parentElement.offsetTop-2+'px';		}	}	if (iFrameHackEnabled) {		displayIFrameHack(subMenuUL);	}}function mouseOverMenu(someElementId) {	window.focus();	//document.forms['search'].Search.focus();	var someElement = document.getElementById(someElementId);	var subMenuUL = someElement.getElementsByTagName('UL')[0];	measureScrollOffset();	subMenuUL.style.display='block';	var layerTop=getAbsolutePositionTop(subMenuUL);	var layerHeight=getElementHeight(subMenuUL);	var difference=viewportHeight-layerTop-layerHeight+scrollOffsetY;	if(difference < 0) {		if(difference <= -(layerTop+scrollOffsetY)) {			subMenuUL.style.top=layerTop-scrollOffsetY-2+'px';		} else {			subMenuUL.style.top=difference-2+'px';		}	}	if (iFrameHackEnabled) {		displayIFrameHack(subMenuUL);	}}function mouseOutMenu(someElementId) {	var someElement = document.getElementById(someElementId);	var subMenuUL = someElement.getElementsByTagName('UL')[0];	var ml = getMenuLevel(subMenuUL);	var allChildMenus = subMenuUL.getElementsByTagName('UL');	var iFrameHack;	for (var i=0; i < allChildMenus.length; i++) {		allChildMenus[i].style.display='none';		if (iFrameHackEnabled) {			iFrameHack = document.getElementById('iFrameHack'+getMenuLevel(allChildMenus[i]));			if (iFrameHack != null) {				iFrameHack.style.display = 'none';			}		}	}	iFrameHack = document.getElementById('iFrameHack'+getMenuLevel(subMenuUL));	if (iFrameHack != null) {		iFrameHack.style.display = 'none';	}	subMenuUL.style.display='none';	var eventIndex = ml * 2;	menuEvents[eventIndex] = 0;}function getMenuLevel(someElement) {	var level;	if (someElement.tagName && someElement.tagName=='UL') level = 1;	else level = 0;	if (someElement.parentNode)		level += getMenuLevel(someElement.parentNode);	return level;}function getElementHeight(someElement) {	if(someElement.offsetHeight) {		//Non-IE		return someElement.offsetHeight;	} else if(someElement.clientHeight) {		//IE 6+ in 'standards compliant mode'		return someElement.clientHeight;	}}function displayIFrameHack(someElement) {	var iFrameHack = document.getElementById('iFrameHack'+getMenuLevel(someElement));	hideAllComboBoxes();	return;	if (iFrameHack != null) {		iFrameHack.style.top = getAbsolutePositionTop(someElement)+2+'px';		iFrameHack.style.left = getAbsolutePositionLeft(someElement)+2+'px';		iFrameHack.style.width = someElement.offsetWidth+'px';		iFrameHack.style.height = someElement.offsetHeight+'px';		iFrameHack.style.zIndex = 19;		iFrameHack.style.display = 'block';	}}function getAbsolutePositionLeft(someElement) {	var ofs = someElement.offsetLeft;	if (someElement.offsetParent) ofs += getAbsolutePositionLeft(someElement.offsetParent);	return ofs;}function getElementWidth(someElement) {	if(someElement.offsetWidth) {		//Non-IE		return someElement.offsetWidth;	} else if(someElement.clientWidth) {		//IE 6+ in 'standards compliant mode'		return someElement.clientWidth;	}}function getAbsolutePositionTop(someElement) {	var ofs = someElement.offsetTop;	if (someElement.offsetParent) ofs += getAbsolutePositionTop(someElement.offsetParent);	return ofs;}function getRelativePositionTop(someElement) {	var ofs;	if (someElement.parentNode) ofs = someElement.parentNode.offsetTop	else ofs = 0;	return ofs;}function getRelativePositionLeft(someElement) {	var ofs;	if (someElement.parentNode) ofs = someElement.parentNode.offsetLeft	else ofs = 0;	return ofs;}function measureScrollOffset() {	if (self.pageYOffset) {		// all except Explorer		scrollOffsetX = self.pageXOffset;		scrollOffsetY = self.pageYOffset;	} else if (document.documentElement && document.documentElement.scrollTop) {		// Explorer 6 Strict		scrollOffsetX = document.documentElement.scrollLeft;		scrollOffsetY = document.documentElement.scrollTop;	} else if (document.body) {		// all other Explorers		scrollOffsetX = document.body.scrollLeft;		scrollOffsetY = document.body.scrollTop;	}}function measureViewportSize() {	if( typeof(window.innerWidth) == 'number' ) {		//Non-IE		viewportWidth = window.innerWidth;		viewportHeight = window.innerHeight;	} else if(document.documentElement && document.documentElement.clientHeight) {		//IE 6+ in 'standards compliant mode'		viewportWidth = document.documentElement.clientWidth;		viewportHeight = document.documentElement.clientHeight;	} else if(document.body && document.body.clientHeight) {		//IE 4 compatible		viewportWidth = document.body.clientWidth;		viewportHeight = document.body.clientHeight;	}}function createIFrame(id) {	var elementIFrame = document.createElement('iframe');	elementIFrame.id = id;	elementIFrame.setAttribute('src', 'about:blank');	elementIFrame.setAttribute('scrolling', 'no');	elementIFrame.setAttribute('frameBorder', '0');	document.getElementsByTagName('body')[0].appendChild(elementIFrame);	elementIFrame.style.display='none';	elementIFrame.style.position='absolute';	elementIFrame.style.top='0px';	elementIFrame.style.left='0px';	iFrameHackEnabled = true;}function initMenus() {//	if (false && navigator.userAgent.indexOf('MSIE') > -1) {	if ( navigator.userAgent.indexOf('MSIE') > -1) {		for (var i=2; i<6; i++)			createIFrame('iFrameHack'+i);	}	measureViewportSize();	activateMenu('primeMenuTop');	activateMenu('primeMenu1');	activateMenu('primeMenu2');	activateMenu('primeMenu3');	}window.onresize=measureViewportSize;