var ovix_menu = new Object();

ovix_menu.ReStyle = new Array();
ovix_menu.options = new Array();
ovix_menu.menu = new Array();



//******************** Меню тип 1 *******************
//Дизайн
ovix_menu.ReStyle['om1'] = new Array();
ovix_menu.ReStyle['om1']['rs1'] = {"top":"50px", "left":"0px", "opacity":"0"};
ovix_menu.ReStyle['om1']['s1'] = {"display" : "none", "position": "absolute"};

ovix_menu.ReStyle['om1']['rs2'] = {"top":"30px", "left":"0px", "opacity":"1"};
ovix_menu.ReStyle['om1']['s2'] = {"display" : "block"};

ovix_menu.ReStyle['om1']['rs3'] = {"top":"50px", "left":"0px", "opacity":"0"};
ovix_menu.ReStyle['om1']['s3'] = {"display" : "none"};

//**Настройки
ovix_menu.options['om1'] = new Array();
//Время входа
ovix_menu.options['om1']['AnimateOverTime'] = 400;
//Время выхода
ovix_menu.options['om1']['AnimateOutTime'] = 500;
//Задержка до ухода
ovix_menu.options['om1']['OutTimeout'] = 500;






//При наведении
ovix_menu.MouseOver = function(menu_id){
	//Получаем объект меню
	var obj = ovix_menu.menu[menu_id].obj;
	//Удаляем таймер закрытия меню
	clearTimeout(ovix_menu.menu[menu_id].timer);
	//Проверяем не открыто ли оно
	if(ovix_menu.menu[menu_id].om_see != true){
		//Чистим очередь эффектов
		$(obj).find(">ul").clearQueue();
		$(obj).find(">ul").stop();
		//Ставим, что оно открыто
		ovix_menu.menu[menu_id].om_see = true;
		//Получаем класс и изменяем внешний вид меню
		var className = $(obj).attr("class");
		$(obj).find(">ul").queue(function() {
			$(this).css( ovix_menu.ReStyle[ className ]['s2'] );
			$(this).dequeue();
		});
		$(obj).find(">ul").animate( ovix_menu.ReStyle[ className ]['rs2'] , ovix_menu.options[ className ]['AnimateOverTime']);
	}
}

ovix_menu.MouseOut = function(menu_id){
	//Получаем объект меню
	var obj = ovix_menu.menu[menu_id].obj;
	//Получаем класс
	var className = $(obj).attr("class");
	//Ставим таймер
	ovix_menu.menu[menu_id].timer = setTimeout("ovix_menu.MouseOut2("+menu_id+");", ovix_menu.options[ className ]['OutTimeout']);
}
ovix_menu.MouseOut2 = function(menu_id){
	//Получаем объект меню
	var obj = ovix_menu.menu[menu_id].obj;
	//Получаем класс и изменяем внешний вид
	var className = $(obj).attr("class");
	$(obj).find(">ul").animate( ovix_menu.ReStyle[ className ]['rs3'] , ovix_menu.options[ className ]['AnimateOutTime'], function(){
		$(obj).find(">ul").css( ovix_menu.ReStyle[ className ]['s3'] );
	});
	//Меню закрыто
	ovix_menu.menu[menu_id].om_see = false;
}
ovix_menu.getParentQuantity = function(obj){
	if(obj.parentNode == null){
		return 1;
	}else{
		return (1+ovix_menu.getParentQuantity(obj.parentNode));
	}
}

$(document).ready(function(){
	i = 0;
	//Перебираем все элементы меню
	$.each($("ul#ovix_menu ul").get(), function() {
		$(this).css({"z-index":ovix_menu.getParentQuantity(this)});
	});
	$.each($("ul#ovix_menu>li").get(), function() {
		//Получаем класс меню
		var className = $(this).attr("class");
		if(className != ""){
			//Привязываем меню к массиву
			ovix_menu.menu[i] = new Object();
			ovix_menu.menu[i].obj = $(this).get();
			
			//Изменяем внешний вид
			$(this).find(">ul").css( ovix_menu.ReStyle[ className ]['s1'] );
			$(this).find(">ul").css( ovix_menu.ReStyle[ className ]['rs1'] );
			//Назначаем функции при наведении
			this.onmouseover = new Function ("ovix_menu.MouseOver("+i+")");
			this.onmouseout = new Function ("ovix_menu.MouseOut("+i+")");
			i++;
		}
	});
});

