/*
* jQuery addon by KIVagant
*
* This program is NOT a free software. You can't redistribute it and/or modify it.
*
* Copyright (c) 2008 Evgenij Glotov (KIVagant@mail.ru)
*/

var click_ar= new Array();
$(document).ready(menu_control);
function menu_control()
{
	var men=$('div.men');
	men.each(function()
	{
		var men_id=$(this).attr('id');
		var cnt_id='cnt_'+men_id;
		if(!menu_ar[men_id]['show'])
		{
			$('#cnt_'+men_id).hide();
			click_ar[cnt_id]=1;
		}
		if(menu_ar[men_id]['close'])
		{
			//var mn_o=document.getElementById("mnu_"+men_id);
			this.innerHTML="<div class='mnu_cls' id='cls_"+men_id+"' onclick='mnclose(\""+men_id+"\",this)'></div>"+this.innerHTML;
		}
		$(".menchild").hover(function() {
			$(this).next("em").animate({opacity: "show", top: "-15"}, "slow");
		}, function() {
			$(this).next("em").animate({opacity: "hide", top: "-15"}, "fast");
		});
		$('.menchild', this).click(function()
		{
			if(menu_ar[men_id] && menu_ar[men_id]['ajax'] && menu_ar[men_id]['ajax']['childs'] && menu_ar[men_id]['ajax']['childs'][this.id]['url'])
			{
				$.ajax({
					method: menu_ar[men_id]['ajax']['childs'][this.id]['method'], // метод передачи данных
					url: menu_ar[men_id]['ajax']['childs'][this.id]['url'], // определили базовый файл для вызова
					data: "men_id="+men_id, // дополнительные параметры
					beforeSend: function()
					{
						$('#'+cnt_id).html("<div id='lod_"+men_id+"' class='loading'>Loading...</div>"); // добавляем загрузку
						$('#'+cnt_id).fadeIn("fast"); //показать контент
						click_ar[cnt_id]=1; // фиксируем, что контент вроде как скрыт и надо показать
					}, // показать загрузку только после щелчка
					complete: function()
					{
						$('#lod_'+men_id).hide("fast");
						anima(men_id);
					}, // скрыть загрузку
					success: function(html)
					{ //полученные данные помещаем в html
						//$('#'+cnt_id).show("slow"); //показать контент
						$('#'+cnt_id).hide();
						$('#'+cnt_id).html(html); // показать html внутри .content div
					}
				}); //close $.ajax(
			} else if(menu_ar[men_id]['ajax'] && menu_ar[men_id]['ajax']['url'])
			{
				$.ajax({
					method: menu_ar[men_id]['ajax']['method'], // метод передачи данных
					url: menu_ar[men_id]['ajax']['url'], // определили базовый файл для вызова
					data: "men_id="+men_id, // дополнительные параметры
					beforeSend: function()
					{
						$('#'+cnt_id).html("<div id='lod_"+men_id+"' class='loading'>Loading...</div>"); // добавляем загрузку
						$('#'+cnt_id).fadeIn("fast"); //показать контент
						click_ar[cnt_id]=1; // фиксируем, что контент вроде как скрыт и надо показать
					}, // показать загрузку только после щелчка
					complete: function()
					{
						$('#lod_'+men_id).hide("fast");
						anima(men_id);
					}, // скрыть загрузку
					success: function(html)
					{ //полученные данные помещаем в html
						//$('#'+cnt_id).show("slow"); //показать контент
						$('#'+cnt_id).hide();
						$('#'+cnt_id).html(html); // показать html внутри .content div
					}
				}); //close $.ajax(
			} else {
				anima(men_id);
			}

		}); //click fnc
	}); //each fnc
}
function anima(men_id)
{
	for(nowplace in menu_ar[men_id]['effects'])
	{
		var slidedown=menu_ar[men_id]['effects'][nowplace]['slideDown'];
		var slideup=menu_ar[men_id]['effects'][nowplace]['slideUp'];
		var show=menu_ar[men_id]['effects'][nowplace]['show'];
		var hide=menu_ar[men_id]['effects'][nowplace]['hide'];
		var fadein=menu_ar[men_id]['effects'][nowplace]['fadeIn'];
		var fadeout=menu_ar[men_id]['effects'][nowplace]['fadeOut'];
		var pl_id=nowplace+'_'+men_id;
		if(show || hide)
		{
			if(show && click_ar[pl_id])
			{
				$('#'+pl_id).show('slow');
			} else if (hide && !click_ar[pl_id])
			{
				$('#'+pl_id).hide('slow');
			}
		}
		if (slidedown || slideup)
		{
			if(slidedown && click_ar[pl_id])
			{
				$('#'+pl_id).slideDown('slow');
			} else if (slideup && !click_ar[pl_id])
			{
				$('#'+pl_id).slideUp('slow');
			}
		}
		if (fadein || fadeout)
		{
			if(fadein && click_ar[pl_id])
			{
				$('#'+pl_id).fadeIn('slow');
			} else if (fadeout && !click_ar[pl_id])
			{
				$('#'+pl_id).fadeOut('slow');
			}
		}
		click_ar[pl_id]=!click_ar[pl_id];
	} //for
}
function mnclose(men_id,mcls)
{
	$('#cnt_'+men_id).hide();
	$('#'+men_id).hide('slow');
	$(mcls).hide();
}
function hideAfterAjax(men_id)
{
	$('#mnu_'+men_id).fadeOut('slow');
	if(menu_ar[men_id]['close'])
	{
		$('#cls_'+men_id).fadeOut('slow');
	}
}