// GK MooMenu v.2.0 Copyright by GavickPro
window.addEvent("domready", function(){
	// necessary classes
		Fx.Height = Fx.Style.extend({initialize: function(el, options){$(el).setStyle('overflow', 'hidden');this.parent(el, 'height', options);},toggle: function(){var style = this.element.getStyle('height').toInt();return (style > 0) ? this.start(style, 0) : this.start(0, this.element.scrollHeight);},show: function(){return this.set(this.element.scrollHeight);}});
			Fx.Width = Fx.Style.extend({initialize: function(el, options){this.element = $(el);this.element.setStyle('overflow', 'hidden');this.iniWidth = this.element.getStyle('width').toInt();this.parent(this.element, 'width', options);},toggle: function(){var style = this.element.getStyle('width').toInt(); return (style > 0) ? this.start(style, 0) : this.start(0, this.iniWidth);},show: function(){return this.set(this.iniWidth);}});
			Fx.Opacity = Fx.Style.extend({initialize: function(el, options){this.now = 1;this.parent(el, 'opacity', options);},toggle: function(){return (this.now > 0) ? this.start(1, 0) : this.start(0, 1);},show: function(){return this.set(1);}});
	
	var main = $("horiz-menu");
	var levels = new Array();
	var opacityFX = new Array();	var heightFX = new Array();	var widthFX = new Array();	
	main.getChildren().each(function(el,i){
		levels.push(new Array());
		opacityFX.push(new Array());		heightFX.push(new Array());		widthFX.push(new Array());		
		el.getElementsBySelector("ul ul").each(function(elm,j){
			levels[i].push(elm.getParent());
			opacityFX[i].push(new Fx.Opacity(elm, {duration: 180, transition: Fx.Transitions.linear}).set(0));			heightFX[i].push(new Fx.Height(elm, {duration: 180, transition: Fx.Transitions.linear}).set(0));			widthFX[i].push(new Fx.Width(elm, {duration: 180, transition: Fx.Transitions.linear}).set(0));		});
	});
	
	levels.each(function(e,k){
		e.each(function(a,l){
			a.addEvents({
				"mouseenter" : function(){
					a.getChildren()[1].setStyle("overflow","hidden");
					if(window.ie7 && (a.getChildren()[1].getParent() && a.getChildren()[1].getParent().getParent() && a.getChildren()[1].getParent().getParent().getParent() && a.getChildren()[1].getParent().getParent().getParent().hasClass("level1")) && a.getChildren()[1].getStyle("position") != 'absolute') a.getChildren()[1].setStyle("margin-top","35px");
					a.getChildren()[1].setStyle("position","absolute");
					opacityFX[k][l].toggle();					heightFX[k][l].toggle();					widthFX[k][l].toggle();					(function(){a.getChildren()[1].setStyle("overflow","")}).delay(180);
				},
				"mouseleave" : function(){
					a.getChildren()[1].setStyle("overflow","hidden");
					opacityFX[k][l].stop().set(0);					heightFX[k][l].stop().set(0);					widthFX[k][l].stop().set(0);				}
			});
		});
	});	
	// submenu activation
	$ES('li.level1','#horiz-menu').each(function(el){
		if(($E('.active',el) || el.hasClass('active')) && $E('ul', el)){
			$E('ul', el).setStyle("display", "block");
			$ES('li.level1','#horiz-menu').each(function(elm){
				elm.addEvent("mouseenter", function(){
					if(elm != el){
						if(!window.ie) $E('ul', el).setProperty("style","");
						else $E('ul', el).removeProperty("style");
					} 
				});
				
				elm.addEvent("mouseleave", function(){
					if(elm != el){
						$E('ul', el).setStyle("display","block");
					} 
				});
			});
		}
	});
});