/*
*********************************************************************
MENU STYLING AND SCRIPTING BY KLAAS BELLEMANS, YAKI.BE
Copyright 2007-2011 www.yaki.be do copy without permission
*********************************************************************
*/

if (window.addEventListener){window.addEventListener("load", init, false);}
else if (window.attachEvent){window.attachEvent("onload", init);}

function init(){initOpenklapmenu('dropMenu');}                                                   

var to2;
var toelem;
var highzindex=1000;

function initOpenklapmenu(id){
 	var menu=document.getElementById(id);
	document.getElementById(id).onmouseout=function(event){
				window.clearTimeout(to2);
				to2=setTimeout("closeAll(document.getElementById('"+id+"').getElementsByTagName('ul')[0]);",1000);
	};
	var items = menu.getElementsByTagName('li');
	for (var i=0;i<items.length;i++){
		items[i].onmouseout=function(event){
			if(event){event.cancelBubble = true;}else{window.event.cancelBubble = true;}                              
				toelem=this.parentNode;
				to2=setTimeout("closeAll(document.getElementById('"+id+"').getElementsByTagName('ul')[0]);",1000);
		
		};
		items[i].onmouseover=function(event){
			if(event){event.cancelBubble = true;}else{window.event.cancelBubble = true;}
			window.clearTimeout(to2);
			highzindex=highzindex+1;
			this.style.zIndex=highzindex;
			highzindex=highzindex+1;
			if(this.getElementsByTagName('ul')[0]){
				this.getElementsByTagName('ul')[0].style.zIndex=highzindex;
			}		
			closeAll(this.parentNode);
			addClass(this,"hover");
		};
	}
}


function closeAll(obj){
		var listitems = obj.getElementsByTagName('li');
		for(var i=0;i<listitems.length;i++){
			removeClass(listitems[i],"hover");
		}
}


/* hasClass, addClass, removeClass */
/* based on http://www.openjs.com/scripts/dom/class_manipulation.php */

function hasClass(elem,classn){
	if(elem){
		return elem.className.match(new RegExp('(\\s|^)'+classn+'(\\s|$)'));
	}
}
function addClass(elem,classn){
	if(elem){
		if(!hasClass(elem,classn)){
			elem.className += " "+classn;
		}
	}
}
function removeClass(elem,classn) {
	if(elem){
		if(hasClass(elem,classn)){
			var reg = new RegExp('(\\s|^)'+classn+'(\\s|$)');
			elem.className=elem.className.replace(reg,' ');
		}
	}
}

