<!--
/* Event handling */

function addEvent(elm, evType, fn, useCapture) {
  if (elm.addEventListener) {
	  elm.addEventListener(evType, fn, useCapture);
		return true;
	}
	else if (elm.attachEvent) {
	  var r = elm.attachEvent('on' + evType, fn);
		EventCache.add(elm, evType, fn);
		return r;
	}
	else {
	  elm['on' + evType] = fn;
	}
}

/* Meny script */
function init() {
  var uls = document.getElementsByTagName('ul');
	for (var u = 0; u < uls.length; u++) {
	  if (uls[u].className.search(/\bslidingmenu\b/) == -1) continue;
	  var lis = uls[u].getElementsByTagName('li');
		for (var i = 0; i < lis.length; i++) {
		  var node = lis[i];
			if (node.nodeName.toLowerCase() == 'li' && node.getElementsByTagName('ul').length > 0) {
			  addEvent(node, 'mouseover', getMoverFor(node), false);
			  addEvent(node, 'mouseout', getMoutFor(node), false);
				node.getElementsByTagName('a')[0].className += ' subheader';
			}
		}
	}
}  

function getMoverFor(node) {
  return function(e) { mover(e, node); };
}

function getMoutFor(node) {
  return function(e) { mout(e, node); };
}

function mover(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';
		}
	}
}

function mout(e, targetElement) {
  var el = window.event ? targetElement : e ? e.currentTarget : null;
	if (!el) return;
	el.outTimeout = setTimeout(function() { mout2(el);}, 200);
}

function mout2(el) {
  for (var i = 0; i < el.childNodes.length; i++) {
	  var node = el.childNodes[i];
		if (node.nodeName.toLowerCase() == 'ul') {
		  node.style.display = 'none';
		}
	}
}


/* Vindu og doc events */
addEvent(window, 'unload', EventCache.flush, false);
addEvent(window, 'load', init, false);