var DropDownMenu = Class.create();

DropDownMenu.prototype = {

 initialize: function(menuElement) {
	var defautlSelectedMenuID = 'currentDefaultSelectedMenu';
	var selectedClassName = 'selected';
	
	function changeSubmenuDisplay(display){
		if(defautlSelectedSubmenu != null)
			Element.extend(defautlSelectedSubmenu).setStyle({display: display})
	}
	
	function moveTemporalSelectedMenu(thisElement, overOrHover){
		if(overOrHover){
			$(defautlSelectedMenuID).removeClassName(selectedClassName);
			thisElement.addClassName(selectedClassName);
		}else{
			$(defautlSelectedMenuID).addClassName(selectedClassName);
			thisElement.removeClassName(selectedClassName);
		}
	}
	
	
	menuElement.childElements().each(function(node){
		var menuTitle = Element.extend(node).hasClassName(selectedClassName);
		var submenu = $A(node.getElementsByTagName("ul")).first();
		
		menuTitle ? Element.extend(node).writeAttribute('id', defautlSelectedMenuID) : false;
		var defautlSelectedMenu = $(defautlSelectedMenuID);
		defautlSelectedMenu != null ? defautlSelectedSubmenu = $A(defautlSelectedMenu.getElementsByTagName("ul")).first() : false;
		
		if(submenu != null)
			Element.extend(submenu).setStyle({display: (menuTitle ? '' : 'none')});
		
		node.onmouseover = function(){
			if(Element.extend(this).readAttribute("id") != defautlSelectedMenuID){
				if(submenu != null)
					Element.toggle(submenu);
				//if(submenu == null)
				//	$('navigationb').writeAttribute('style', 'background-color:#FFFFFF; background-image:none; border-left:1px solid #888; border-right:1px solid #888; width:980px;');
				changeSubmenuDisplay('none');
				moveTemporalSelectedMenu(Element.extend(this), true);
			}
		}
		node.onmouseout = function(){
			if(Element.extend(this).readAttribute("id") != defautlSelectedMenuID){
				if(submenu != null)
					Element.toggle(submenu);
				//if(submenu == null)
				//	$('navigationb').writeAttribute('style', '');
				changeSubmenuDisplay('block');
				moveTemporalSelectedMenu(Element.extend(this), false);
			}
		}
	});
 }

};
