// JavaScript Document
//		var menuLevel = 0;
		var lastActive;
		var lastActiveLVL2;
		var lastActiveLVL3;		
		
		//KONSTRUKTUR MUSS MANUELL AM ENDE DES DOKUMENTS AUFGERUFEN WERDEN
		function JSCSSMenu(parentContainer) {		
			//parseMenuEntrys(parentContainer);
		}
	
		function addClass (element, className) {
			if (!hasClass(element, className)) {
				if (element.className) {
					element.className += " " + className;
				} else {
					element.className = className;
				}
			}
		}
		
		function removeClass (element, className) {
			var regexp = addClass[className];
			if (!regexp) {
				regexp = addClass[className] = new RegExp("(^|\\s)" + className + "(\\s|$)");
			}
			
			element.className = element.className.replace(regexp, "$2");
			
		}
		
		function hasClass (element, className) {
			var regexp = addClass[className];
			if (!regexp) {
				regexp = addClass[className] = new RegExp("(^|\\s)" + className + "(\\s|$)");
			}
			return regexp.test(element.className);
		}
				 
		/*function parseMenuEntrys(element) {
			for (i=0; i < element.childNodes.length; i++) {
				menuEntry = element.childNodes[i];
				
				if(menuEntry.nodeName=="LI" || menuEntry.nodeName=="UL") {
					//addEventHandlers(menuEntry);
					//menuEntry.id = "lvl_"+menuLevel+"_ent_"+i;
					
					if(menuEntry.childNodes.length > 0) {
						//menuLevel += 1;
						parseMenuEntrys(menuEntry);	
					}
				} 
			}
		}*/
		
		/*function addEventHandlers(element) {
			element.onmouseover = function() {
				mouseOver(element)();
			}
			element.onmouseout = function() {
				mouseOut();
			}
		}*/
		
		function menuMouseOver(element) {
				element.mouseContact = true;
				
				addClass(element, "hover");
				addClass(element, "open");

				if(lastActiveLVL3 && lastActiveLVL3 != lastActive)
					submenuHide(lastActiveLVL3);

				if(lastActiveLVL2 && lastActiveLVL2 != lastActive)
					submenuHide(lastActiveLVL2);

				if(lastActive && lastActive != element)
					submenuHide(lastActive);					



				//alert(element);
				lastActiveLVL3 = lastActiveLVL2;
				lastActiveLVL2 = lastActive;
				lastActive = element;				
				
				//window.setTimeout(function() { submenuOpen(element) }, 100);
		}
		
		function menuMouseOut(element) {
				element.mouseContact = false;
				removeClass(element, "hover");
				
				window.setTimeout(function() { submenuHide(element) }, 2500);
		}
		
		function isSubmenuOpen(element, bOpen) {
		
			if(element.childNodes.length > 0) {
				for (i=0; i < element.childNodes.length; i++) {
					
					if(hasClass(element.childNodes[i], "open"))
						return bOpen = true;

				}
			} 
			
			return bOpen;
		}
			
		function submenuHide(element) {
			if(!isSubmenuOpen(element) && element.mouseContact == false) {
				
				removeClass(element, "open");
				
			}
		}			