var lastmenudiv;
var lastsubmenudiv;

function menuCleanUp(submenudiv, menudiv)
{
    /*if($chk(lastmenudiv))
    {
        if(menudiv.getAttribute('id') != lastmenudiv.getAttribute('id'))
        {
            lastmenudiv.getElement('a').set('class', '');
        }
    }*/
    if($chk(submenudiv) && $chk(lastsubmenudiv) )
    {
        if(submenudiv.getAttribute('id') != lastsubmenudiv.getAttribute('id'))
        {
            lastsubmenudiv.setStyle('z-index', '1000');
            lastsubmenudiv.setStyle('top', '-1000px');				        
        }
    }
    lastmenudiv = menudiv;
    lastsubmenudiv = submenudiv;
}

window.addEvent('domready', function(){
	$('drop_down_menu').getElements('li.menu').each(function(elem)
	{
		var pageid = elem.getAttribute('id').replace('menu', "");		
		var menudiv = $('menu' + pageid);	
		var submenudiv = $('submenudiv' + pageid);						
		if($chk(submenudiv))
		{		   
		    var submenu = submenudiv.getElement('ul');		    
		    submenudiv.setStyle('left', (elem.getCoordinates().left + elem.getSize().x) + 'px');            
            submenudiv.set('opacity', '0.9');
		    var myFx = new Fx.Slide(submenu, {mode:'horizontal',duration:'300',wait:false}).hide();
		    elem.addEvents({
			    'mouseenter' : function(){
			        menuCleanUp(submenudiv, menudiv);
			        submenudiv.setStyle('top', elem.getCoordinates().top + 'px');
		            submenudiv.setStyle('z-index', '2000');
		            myFx.cancel();
			        myFx.slideIn();				    
				    submenudiv.addEvents({
			            'mouseenter' : function(){
			                $('menu' + pageid).getElement('a').set('class', 'menuover');
			                menuCleanUp(submenudiv, menudiv);
			                submenudiv.setStyle('z-index', '2000');
                            submenudiv.setStyle('top', elem.getCoordinates().top + 'px');
		                    myFx.cancel();
			                myFx.slideIn();
			            },
			            'mouseleave' : function(){			                
			                lastmenudiv.getElement('a').set('class', '');
				            myFx.cancel();
			                myFx.slideOut();
			                submenudiv.removeEvents();
			            }
		            });			            
			    },
			    'mouseleave' : function(){
			        myFx.cancel();
				    myFx.slideOut();
				    if(!myFx.open)
				    {
				        submenudiv.removeEvents();
				    }
			    }
		    });	  		      
		}
		else
		{
		    elem.addEvents({
	            'mouseenter' : function()
	            {
			        menuCleanUp(submenudiv, menudiv);
			    }
	        });
		}	
	})
});