// JavaScript Document

var jsMenu = {
	
	addListeners: function () {
		var divNavigation = document.getElementById("navigation");
		var arrULs = divNavigation.getElementsByTagName('ul');
		for (var u = 0; u < arrULs.length; u++) {
			if (arrULs[u].className.search(/\bjsMenu\b/) == -1)
				continue;
			var arrLIs = arrULs[u].getElementsByTagName('li');
			for (var i = 0; i < arrLIs.length; i++) {
				var objNode = arrLIs[i];
				if (objNode.nodeName.toLowerCase() == 'li' && objNode.getElementsByTagName('ul').length > 0) {
					rwScript.addEvent(objNode, 'mouseover', jsMenu.getMOverFor(objNode), false);
					rwScript.addEvent(objNode, 'mouseout', jsMenu.getMOutFor(objNode), false);
				}
			}
		}
	},
	
	mOver: function (e, targetElement) {
		var el = window.event ? targetElement : e ? e.currentTarget : null;
		if (!el) return;
		clearTimeout(el.outTimeout);
		for (var i = 0; i < el.childNodes.length; i++) {
			var node = el.childNodes[i];
			if (node.nodeName.toLowerCase() == 'ul') {
				node.style.display = 'block';
			}
		}
	},
	
	mOut: function (e, targetElement) {
		var el = window.event ? targetElement : e ? e.currentTarget : null;
		if (!el) return;
		el.outTimeout = setTimeout(function() { jsMenu.mOut2(el); }, 300);
	},

	mOut2: function (el) {
		for (var i = 0; i < el.childNodes.length; i++) {
			var node = el.childNodes[i];
			if (node.nodeName.toLowerCase() == 'ul') {
				node.style.display = 'none';
			}
		}
	},

	getMOverFor: function (node) {
		return function(e) { jsMenu.mOver(e, node); };
	},
	
	getMOutFor: function (node) {
		return function(e) { jsMenu.mOut(e, node); };
	}

};

rwScript.addEvent(window, 'load', jsMenu.addListeners, false);
rwScript.addEvent(window, 'unload', EventCache.flush, false);
