var EMenu = new Class({
    Implements: [Events, Options],
    
    options: {
        autocalc: true,
        image_speed: 400,
        menu_speed: 500
    },
    initialize: function(id, options){
		this.setOptions(options);
		this.over = false;
		var menu = $(id), 	
		// mainmenu = $$('li.parent a');
		first_list_lis = menu.getFirst().getChildren();
		first_list_lis[0].addClass('first');
		
		
		first_list_lis.each(function(el){
			if (el.hasClass('active')) {
				if ($defined(el.getElement('ul'))) {
					var second_list_active = el.getElement('ul');
					el.getElement('a.parent').setStyle('background', '#B5B6B8');
					el.getElement('a.parent').setStyle('color', '#FFF');
					second_list_active.setStyle('visibility', 'visible');
					second_list_active.setOpacity(1);
					var fx_active = new Fx.Tween(second_list_active, {
						property: 'opacity',
						link: 'cancel',
						duration: 500
					});
				}
			}
			if ($defined(el.getElement('ul'))) {
				var second_list = el.getElement('ul');
				if (!el.hasClass('active')) {
					second_list.setOpacity(0);
				}
				var fx = new Fx.Tween(second_list, {
					property: 'opacity',
					link: 'cancel',
					duration: 500
				});
				
				var menupunkt = el.getElement('a.parent');
			if (!el.hasClass('active')) {
					menupunkt.setStyle('background-color', '#FFFFFF');
									}
					var menu_ani = new Fx.Tween(menupunkt, {
						property: 'background-color',
						link: 'cancel',
						duration: this.options.menu_speed
					});
				
				
				el.addEvents({
					mouseenter: function(){
						fx.start(1);
						
						if ($defined(menupunkt)) {
							menu_ani.start('#B5B6B8');
						}
					},
					mouseleave: function(){
									if (!el.hasClass('active')) {
										fx.start(0);
										if ($defined(menupunkt)) {
											menu_ani.start('#FFF');
										}
						} else {
							fx.start(1);
						}
					}
				});
			}
		}
.bind(this));
	}
});