//////////////////////////// aviagrad.com/0/menu.htm  moskva-izdat.ru/0/menu.htm
var main_count=0;
var munu_main_id=new Array();
//var main_show_num=-1;
var old_main_showed_num=-1;
var main_show_num=-1;// защита от дребезга
var main_show_opacity=0;// защита от дребезга
var munu_sub_count=new Array();
var munu_sub_count_total=0;
var munu_sub_id=new Array();

var old_sub_showed_num=-1;
var sub_show_num=-1;// защита от дребезга
var sub_show_opacity=0;// защита от дребезга
var munu_subsub_count=new Array();
var munu_subsub_count_total=0;
var munu_subsub_id=new Array();
var main_old_bg_changed=0;

var was_sub_empty=0;// был пустой sub без subsub
/////////////////////////////
var brauser_type_menu="any";
version=navigator.appVersion;
supporting1=document.getElementById?1:0;
if((version.indexOf("MSIE 6")>-1 && supporting1) || (version.indexOf("MSIE 7")>-1 && supporting1) || (version.indexOf("MSIE 8")>-1 && supporting1) || (version.indexOf("MSIE 9")>-1 && supporting1))
brauser_type_menu="ie";
else
if(window.opera)
brauser_type_menu="opera";
else
if(navigator.userAgent.indexOf("Firefox")>0)
brauser_type_menu="lisa";
else
if(navigator.userAgent.indexOf("AppleWebKit")>0)
brauser_type_menu="apple";
////////////////////////////////////////////////////////////////////////////////////////////////////
var first=1;
function first_operations()// срабатывает только 1 раз вначале
{

document.write('\n<style type="text/css">\n');
document.write('A.linckmenu:link{'+munuMain_A_link+'}\n');
document.write('A.linckmenu:visited {'+munuMain_A_visited+'}\n');
document.write('A.linckmenu:hover {'+munuMain_A_hover+'}\n');
document.write('A.linckmenu:active {'+munuMain_A_active+'}\n');

document.write('A.linckmenu2:link{'+munuSub_A_link+'}\n');
document.write('A.linckmenu2:visited {'+munuSub_A_visited+'}\n');
document.write('A.linckmenu2:hover {'+munuSub_A_hover+'}\n');
document.write('A.linckmenu2:active {'+munuSub_A_active+'}\n');

document.write('\n</style>\n');

first=0;
}
////////////////////////////////////////////////////////////////////////////////////////////////////
function hidemenu(mine,num_sub, type)// начали закрывать
{//alert(num_sub);
if(num_sub>=0)	
{//alert(num_sub);
if(type==1)
	menu_bg_color("menu_sub_"+mine+"_"+num_sub,0);
sub_show_num=-1;
setTimeout("endhidemenu("+mine+","+num_sub+")",500);
}
// попытка закрыть всегда
main_show_num=-1;
setTimeout("endhidemenu("+mine+",-1)",500);
}
/////////////
function endhidemenu(mine,num_sub)// закрыли
{
if( num_sub>=0)
{ 	
if(typeof(munu_subsub_count[mine][num_sub])!='undefined' && munu_subsub_count[mine][num_sub])
{

if(sub_show_num>=0)// защита от дребезга
	{
		sub_show_opacity=1;	
		return;	
	}
sub_show_opacity=0; 
id_sub="menu_"+mine+"_"+num_sub;
document.getElementById(id_sub).style.visibility = "hidden";
//changeOpac(0, id_sub);
setTimeout("changeOpac(0,'" + id_sub + "')",0);
}
else //-чтобы после меню без subsub другое срабатывало
	{
		if(was_sub_empty)
			sub_show_opacity=0;
	}
}
// sub:
if(main_show_num>=0)// защита от дребезга
	{main_show_opacity=1;return;}
main_show_opacity=0;	

//if(document.getElementById("menu_"+mine))// затыкается здесь в опере
if(typeof(munu_sub_count[mine])!='undefined' && munu_sub_count[mine]!=0)
{
id="menu_"+mine;
document.getElementById(id).style.visibility = "hidden";
//changeOpac(0, id);//alert(main_show_num);
setTimeout("changeOpac(0,'" + id + "')",0);
}
//alert(main_show_num);

}
//////////////////////////////////////

function showmenu(mine,num_sub, type)
{	
//быстро закрыть предыдущеее:
if(old_main_showed_num>=0 && old_main_showed_num!=mine)
{	
main_show_num=-1; 
endhidemenu(old_main_showed_num);
}
main_show_num=mine;
old_main_showed_num=mine;  

// открыть sub
if(main_show_opacity==0)// от дребезга
{main_show_opacity=1;
	id="menu_"+mine;
	if(typeof(munu_sub_count[mine])!='undefined' && munu_sub_count[mine]!=0)
	{
	document.getElementById(id).style.visibility = "visible";
	to_show_progress(id);	
	}
}

// открыть subsub
if(num_sub>=0)
{
//if(type==1) - пусть всегда подсвечивает, даже когда subsub
menu_bg_color("menu_sub_"+mine+"_"+num_sub,1); 

//быстро закрыть предыдущеее:
if(old_sub_showed_num>=0 && old_sub_showed_num!=num_sub)
{	
sub_show_num=-1; 
endhidemenu(old_main_showed_num,old_sub_showed_num);
}
sub_show_num=num_sub;
old_sub_showed_num=num_sub;

if(typeof(munu_subsub_count[mine][num_sub])!='undefined' && munu_subsub_count[mine][num_sub])
	{
if(sub_show_opacity==0)// от дребезга
{
sub_show_opacity=1; //alert("!!"+sub_show_opacity);
id_sub="menu_"+mine+"_"+num_sub;
//sub_show_opacity=0; !!!???
//alert("!!"+munu_subsub_count[mine][num_sub]);
document.getElementById(id_sub).style.visibility = "visible";
to_show_progress(id_sub);
was_sub_empty=0;
} //alert("!!"+sub_show_opacity);
	}
	else
	{
//alert("!!"+sub_show_opacity);
was_sub_empty=1;
	}
}
}
/////////////////////////////////////////

function to_show_progress(id)
{
var timer = 0;
for(i = 0; i <= 100; i++) 
{
setTimeout("changeOpac(" + i + ",'" + id + "')",(timer * show_speed));
timer++;
}
}
///////////////////////////////////////
function changeOpac(opacity, id) 
{
var id_obj=document.getElementById(id);
if(typeof(id_obj)=='undefined')
	return;
//opacity:0.0; -khtml-opacity: 0.0; -moz-opacity:0.0; filter:alpha(opacity=0);
if(brauser_type_menu=="opera")
{id_obj.style.opacity=opacity/100;return;}// для оперы

if(brauser_type_menu=="lisa")
{id_obj.style.MozOpacity=opacity/100;return;}//Для FireFox, Mozilla (Gecko): 

if(brauser_type_menu=="apple")
{id_obj.style.KhtmlOpacity=opacity/100;return;}//Для Konqueror/Safari:

if(brauser_type_menu=="ie" || brauser_type_menu=="apple")
{
if(typeof(id_obj.filters.alpha)=='undefined')
	return;
	id_obj.filters.alpha.opacity=opacity;return;
}//Для IE: 

id_obj.style.opacity=opacity/100;
id_obj.style.KhtmlOpacity=opacity/100;//Для Konqueror/Safari:
id_obj.style.MozOpacity=opacity/100;
id_obj.filters.alpha.opacity=opacity;
//if(opacity==1)
//	main_show_opacity=1;
}
/////////////////////////////////////
function makeMain(num,name,link,targ,alt)
{
if(first==1)
	first_operations();
first=0;

var left=from_left+main_count*(menuMain_sizeX+menu_between);
var top=from_top;

// margin-top: 0px;
//alert('<div align=center id="menu_main_'+num+'" onMouseOut="hidemenu('+num+',-1,0)" onMouseOver="showmenu('+num+',-1,0)" style="position:absolute; top:'+top+';left:'+left+';overflow:hidden;margin:0;border:0;width:'+menuMain_sizeX+';height:'+munu_height+';background-color:'+munuMain_bgcolor+';font-family:'+menu_font_family+';font-size:'+menu_font_size+'; z-index:1000;color:'+munuMain_color+'"><nobr>'+name+'</nobr></div>');
if(link.length==0)
document.write('<div align=center id="menu_main_'+num+'" onMouseOut="hidemenu('+num+',-1,0)" onMouseOver="showmenu('+num+',-1,0)" style="position:absolute; top:'+top+';left:'+left+';overflow:hidden;margin:0;border:0;width:'+menuMain_sizeX+';height:'+munu_height+';background-color:'+munuMain_bgcolor+';font-family:'+menu_font_family+';font-size:'+menu_font_size+'; z-index:1000;color:'+munuMain_color+'"><nobr>'+name+'</nobr></div>');
else
document.write('<div align=center id="menu_main_'+num+'" onMouseOut="hidemenu('+num+',-1,0)" onMouseOver="showmenu('+num+',-1,0)" style="position:absolute; top:'+top+';left:'+left+';overflow:hidden;margin:0;border:0;width:'+menuMain_sizeX+';height:'+munu_height+';background-color:'+munuMain_bgcolor+';font-family:'+menu_font_family+';font-size:'+menu_font_size+'; z-index:1000;"><a class="linckmenu" href="'+link+'" target="'+targ+'" title="'+alt+'"><nobr>'+name+'</nobr></a></div>');
//main_show_num=-1;
munu_main_id[main_count]="menu_main_"+num;
main_count++;
munu_sub_count[num]=0;
}
//////////////////////////////////////
function beginSub(num_mian)
{
var left=from_left+num_mian*(menuMain_sizeX+menu_between);
var top=from_top+munu_height;
document.write('<div id="menu_'+num_mian+'" onMouseOut="hidemenu('+num_mian+',-1,0)" onMouseOver="showmenu('+num_mian+',-1,0)" style="visibility:hidden;position:absolute; top:'+top+';left:'+left+';background-color:'+munuSub_bgcolor+';font-family:'+menu_font_family+';font-size:'+menu_font_size+'; z-index:1000;opacity:0.0; -khtml-opacity: 0.0; -moz-opacity:0.0; filter:alpha(opacity=0);">');
munu_sub_count[num_mian]=0;
munu_sub_id[munu_sub_count_total]="menu_"+num_mian;
munu_sub_count_total++;
munu_subsub_count[num_mian]=new Array();
}
///////////////////////////////////////
function makeSub(num_mian,num,name,link,targ,alt)
{    // onMouseOver="menu_bg_color1(this,1)" onMouseOut="menu_bg_color1(this,0)" 
//onMouseOut="hidemenu('+num_mian+','+num+',1)" onMouseOver="showmenu('+num_mian+','+num+',1)"
if(link.length==0)
document.write('<div id="menu_sub_'+num_mian+'_'+num+'" onMouseOut="hidemenu('+num_mian+','+num+',1)" onMouseOver="showmenu('+num_mian+','+num+',1)" style="background-color:'+munuSub_bgcolor+';overflow:hidden;margin:0;border:0;width:'+menuSub_siseX+';height:'+munu_height+';color:'+munuSub_color+'" ><nobr>'+name+'</nobr></div>');
else
document.write('<div id="menu_sub_'+num_mian+'_'+num+'" onMouseOut="hidemenu('+num_mian+','+num+',1)" onMouseOver="showmenu('+num_mian+','+num+',1)" style="background-color:'+munuSub_bgcolor+';overflow:hidden;margin:0;border:0;width:'+menuSub_siseX+';height:'+munu_height+';" ><a class="linckmenu2" href="'+link+'" target="'+targ+'" title="'+alt+'"><nobr>'+name+'</nobr></a></div>');
munu_sub_count[num_mian]++;
//alert(munu_sub_count[num_mian]);
}
////////////////////////////////////////

function menu_bg_color1(ob,bbg) // menu_bg_color("menu_sub_'+num+'",bbg)
{	
if(bbg==1)
	{ob.style.backgroundColor = munuSub_bgcolor_select;}
else
ob.style.backgroundColor=munuSub_bgcolor;
}
///////////

function menu_bg_color(id,bbg) // menu_bg_color("menu_sub_'+num+'",bbg)
{	
if(bbg==1)
	{
	if(main_old_bg_changed!=0)
		menu_bg_color(main_old_bg_changed,0);
	document.getElementById(id).style.backgroundColor = munuSub_bgcolor_select;
	main_old_bg_changed=id;
	}
else
document.getElementById(id).style.backgroundColor=munuSub_bgcolor;
}
/////////////////////////////////////////
function showSubmenu(mine,num_sub)
{	
// открыть subsub
if(num_sub>=0)
{
id_sub="menu_"+mine+"_"+num_sub;
document.getElementById(id_sub).style.visibility = "visible";
to_show_progress(id_sub);
}
}
/////////////////////////////////////////
function beginSubSub(num_mian,num_sub)
{
var left=from_left+num_mian*(menuMain_sizeX+menu_between)+menuSub_siseX;
var top=from_top+(munu_height*(num_sub+1));
document.write('<div id="menu_'+num_mian+'_'+num_sub+'" onMouseOut="hidemenu('+num_mian+','+num_sub+',0)" onMouseOver="showmenu('+num_mian+','+num_sub+',0)" style="visibility:hidden;position:absolute; top:'+top+';left:'+left+';background-color:'+munuSub_bgcolor+';font-family:'+menu_font_family+';font-size:'+menu_font_size+'; z-index:1000;opacity:0.0; -khtml-opacity: 0.0; -moz-opacity:0.0; filter:alpha(opacity=0);">');
munu_subsub_count[num_mian][num_sub]=0;
munu_subsub_id[munu_subsub_count_total]="menu_"+num_mian+"_"+num_sub;
munu_subsub_count_total++;
}
///////////////////////////////////////
function makeSubSub(num_mian,num_sub,num,name,link,targ,alt)
{
	//onMouseOver="menu_bg_color1(this,1)" onMouseOut="menu_bg_color1(this,0)"
if(link.length==0)
document.write('<div onMouseOver="menu_bg_color1(this,1)" onMouseOut="menu_bg_color1(this,0)" style="overflow:hidden;margin:0;border:0;width:'+menuSub_siseX+';height:'+munu_height+';color:'+munuSub_color+'"><nobr>'+name+'</nobr></div>');
else
document.write('<div onMouseOver="menu_bg_color1(this,1)" onMouseOut="menu_bg_color1(this,0)" style="overflow:hidden;margin:0;border:0;width:'+menuSub_siseX+';height:'+munu_height+';"><a class="linckmenu2" href="'+link+'" target="'+targ+'" title="'+alt+'"><nobr>'+name+'</nobr></a></div>');
munu_subsub_count[num_mian][num_sub]++;
//alert(munu_sub_count[num_mian]);
}
////////////////////////////////////////
function endSub()
{
document.write('</div>'); 

}
//////////////////////////////////////
function end_menu_construcr()
{
update_positions();
}
///////////////////////////////////////
function update_positions()
{
if(from_center==0)// меню задано не по центру
{
if(typeof(update_parent)=='function')
	{	update_parent();}
return;
}

var width_scr=document.getElementsByTagName('body')[0].clientWidth;
var widthAll=main_count*(menuMain_sizeX+menu_between);
from_left=(width_scr-widthAll)/2;
 
for(i=0;i<main_count;i++)
{
left=from_left+i*(menuMain_sizeX+menu_between);
document.getElementById(munu_main_id[i]).style.left = from_left+i*(menuMain_sizeX+menu_between);

if(document.getElementById("menu_"+i))
	{
document.getElementById("menu_"+i).style.left = left;
for(ii=0;ii<munu_sub_count[i];ii++)
		{
if(document.getElementById("menu_"+i+"_"+ii))
	document.getElementById("menu_"+i+"_"+ii).style.left = left+menuSub_siseX;
		}
	}
}
//alert("!!!");
// чтобы родитель мог воспользоваться
if(typeof(update_parent)=='function')
	{	update_parent();}
}
//////////////////////////////////////
function clineAllmenu()
{
for(i=0;i<munu_sub_count_total;i++)
{
document.getElementById(munu_sub_id[i]).style.visibility = "hidden";
//changeOpac(0, munu_sub_id[i]);
setTimeout("changeOpac(0,'" + munu_sub_id[i] + "')",0);
}
for(i=0;i<munu_subsub_count_total;i++)
{
document.getElementById(munu_subsub_id[i]).style.visibility = "hidden";
//changeOpac(0, munu_subsub_id[i]);
setTimeout("changeOpac(0,'" + munu_subsub_id[i] + "')",0);
}
//alert("!!!");
}

document.onclick= clineAllmenu;
window.onresize = update_positions;
// !! ЕСЛИ на странице уже используется перехват window.onresize
// то в ту функцию нужно добавть вызов update_positions() 


