// JavaScript Document

/************************************************\
| VMenu 1.00                                     |
| Kulikov V. V.  2004                            |
| vitali.k@altoros.com                           |
\************************************************/

/* peremennye */
var deltaX = 1; /* gorizontal'noe smeschenie pervogo urovnia menu */
var deltaY = 1; /* vertikal'noe smeschenie pervogo urovnia menu */
var deltaSubX = 0; /* gorizontal'noe smeschenie vtorogo urovnia menu */ 
var deltaSubY = 0; /* vertikal'noe smeschenie vtorogo urovnia menu */
if (window.opera)
{
	var flag = true;

	if(navigator.userAgent.indexOf("Opera 8") > 0 || navigator.userAgent.indexOf("Opera/8") >= 0)
	{
			var deltaY = 30;
			var deltaX = 3;
				flag   = false;
	}
	if(navigator.userAgent.indexOf("Opera 8.01") > 0 || navigator.userAgent.indexOf("Opera/8") >= 0)
	{
			var deltaY = 27;
			if(!flag)
				deltaX = 0;
	}
}
if (window.opera || navigator.userAgent.indexOf("Opera 8") > 0 || navigator.userAgent.indexOf("Opera/8") >= 0)
{
	var deltaY = 27;
	var deltaX = 0;
}

var submenu = 0;
var submenuX = new Array();
var submenuOpen = new Array();
function printMenu() {
    document.write("<ul>"); //"<ul class=\"navigation\">"
	for ( i = 0; i < menu.length;i++) {
	    idPoint = i + 1;
		//menuPoint = "<li onmouseover=\"changeState(this)\" onmouseout=\"changeState(this)\"><a href=\"#\"><span><span>"+menu[i][0]+"</span></span></a></li>";
		menuPoint = "<td class='menu_bg' onmouseover='this.firstChild.firstChild.src=\"html/images/red/"+menu[i][0]+"2.gif\" ;hideAll_top(); showMenu_top(this.firstChild.firstChild.id); this.className=\"menu_bg_hover\"; return true;' onmouseout='this.className=\"menu_bg\"; this.firstChild.firstChild.src=\"html/images/red/"+menu[i][0]+".gif\" ;initiateHideMenu_top(); return true' onclick='document.location=\""+menu[i][1]+"\"'><span><img src='html/images/red/"+menu[i][0]+".gif' border='0' alt='' class='menu'  id='"+idPoint+"' /></span></td>";
		document.write(menuPoint);
		
		// subMenu
		subMenuRab = subMenu[idPoint];
		if (subMenuRab) {
			printSubMenu(idPoint,subMenuRab);
		}
		// \subMenu 
	}
	document.write("</ul");
}


function printSubMenu(idPoint,subMenuRab,num) {
	var num = num ? num : 0;
	if(isDOM) { width = "" }
	if(isMSIE) { width = "width:1px;" }
	if(isOpera) { width = "" }
	subMenuContainer = "<div id='sub"+idPoint+"' class='subMenuContainer' style='position: absolute;	visibility: hidden;	top: -500px; left: -500px;"+width+"'>";
			document.write(subMenuContainer);
			for ( j = 0; j < subMenuRab.length-1;j++) {
				idSubPoint = idPoint+"_"+j;
				css = "this.className=\"subMenu2\";"
				css2 = "this.className=\"subMenu\";"
				subMenuPoint = "<div class='subMenu' id='"+idSubPoint+"' onmouseover='"+css+"hideSubMenu_top("+num+");showSubMenu_top(this.id,"+num+"); return true;' onmouseout='"+css2+"initiateHideSubMenu_top();' onClick='document.location=\""+subMenuRab[j][1]+"\";' nowrap>"+subMenuRab[j][0]+"</div>";
				document.write(subMenuPoint);
				// SubSubMenu 
				if ( subMenuRab[subMenuRab.length-1] == "yes" ){
					 subMenuRabZikl = eval( "subMenu" + idPoint);
					if ( subMenuRabZikl[j+1] ) { 
						printSubMenu(idSubPoint,subMenuRabZikl[j+1],j);
					}
				}
				
			}
			j=num;
			document.write('</div>');
}

function cancelCloseMenu_top(){
	if(self.tm) clearTimeout(tm) // cancel delayed closing
	if(self.tmAll) clearTimeout(tmAll) // cancel delayed closing
}

function showMenu_top(menulayer){

		menu=layer(menulayer)
			menu.object = menu.object.parentNode; // substitute img for td
		submenulayer = 'sub' + menulayer
		imglayer = menulayer +'Img'
		imglayerUrl = menulayer +'roll.gif'

	cancelCloseMenu_top()
	if(document.getElementById(submenulayer)){
	submenu=layer(submenulayer)
	submenuOpen.push(submenu);
	getSizeDiv(menulayer,1);
	pointX = menu.getAbsoluteLeft() - 1 + deltaX;
	pointY = menu.getAbsoluteTop() - 1 + menu.getHeight() + deltaY;
	if ((getWindowWidth()/2+380)-pointX > submenu.getWidth()) {
		submenu.moveTo(pointX,pointY); // move second menu relatively
	}	else {
		widthMin =submenu.getWidth()-((getWindowWidth()/2+380)-pointX);
		submenu.moveTo(pointX-widthMin,pointY);
	}
	
	submenu.show()}
}

function showSubMenu_top(menulayer,num){
		menulayerArray = menulayer.split('_');
		menu=layer(menulayer)
		submenulayer = 'sub' + menulayer
		imglayer = menulayer +'Img'
		imglayerUrl = menulayer +'roll.gif'
	
	cancelCloseMenu_top()
	if(document.getElementById(submenulayer)){
	submenuX[num]=layer(submenulayer);
	submenuOpen.push(submenuX[num]);
	// Vystavliem razmer vneshnego elementa div dlia SubMenu
	getSizeDiv(menulayer,0);
	// \Vystavliem razmer vneshnego elementa div dlia SubMenu
	pointX = menu.getAbsoluteLeft()+menu.getWidth() + deltaSubX;
	//proverka urovnia vlojennosti
	if ( menulayerArray.length < 3 ) {
		pointY = menu.getAbsoluteTop() + deltaSubY;
	}	else {
		pointY = menu.getAbsoluteTop()-menu.getHeight()+1 + deltaSubY;
	}
	if (getWindowWidth()-pointX > submenuX[num].getWidth()) {
		if( isDOM ){
			submenuX[num].moveTo(pointX-menu.getAbsoluteLeft()-1,pointY-menu.getHeight())
		}
		if( isMSIE ){
			submenuX[num].moveTo(pointX-menu.getAbsoluteLeft()-1,pointY-menu.getHeight()-1)
		}
		if( isOpera ){
			submenuX[num].moveTo(pointX-menu.getAbsoluteLeft()-1,pointY-menu.getHeight())
		}
	} else {
		if( isDOM ){
			submenuX[num].moveTo(pointX-submenuX[num].getWidth()-menu.getAbsoluteLeft()-menu.getWidth(),pointY-menu.getHeight())
		}
		if( isMSIE ){
			submenuX[num].moveTo(pointX-submenuX[num].getWidth()-menu.getAbsoluteLeft()-menu.getWidth(),pointY-menu.getHeight()-1)
		}
		if( isOpera ){
			submenuX[num].moveTo(pointX-menu.getWidth()-submenuX[num].getWidth()-menu.getAbsoluteLeft(),pointY-menu.getHeight())
		}
	}
	submenuX[num].show()
	}
}

// vystavlyem shirinu div
function getSizeDiv(menulayer,flag) { // flag = 1 - menu, flag = 0 - submenu
	submenulayer = 'sub' + menulayer;
	nodeSub = document.getElementById(submenulayer);
	menu_array_num = menulayer.substring(0,menulayer.length-2);
	menu_array_num2 = menulayer.substring(menulayer.length-1,menulayer.length);
	if( flag == 1 ){
			menu_array_num2 = parseInt(menu_array_num2);
		}
		else {
			menu_array_num2 = parseInt(menu_array_num2) + 1;
		}
	if (menu_array=eval('subMenu'+menu_array_num+'['+menu_array_num2+']')) {
		sub_width = new Array();
		for ( k = 0; k < menu_array.length-1;k++) {
			nodeSub2 = layer(menulayer+"_"+k);
			
			sub_width[k] = nodeSub2.getWidth();
		}
		getMaxNum(sub_width);
			nodeSub.style.width = max_width + "px";
	}
}

// maximalnoe chislo iz massiva
function getMaxNum(sub_width) {
	max_width = 0;
	for ( l = 0 ; l < sub_width.length; l++ ) {
		if ( sub_width[l] > max_width ) {
			max_width = sub_width[l];
		}
	}
}

function initiateHideMenu_top(){
	tmAll=setTimeout("hideAll_top()",300)
}

function initiateHideSubMenu_top(){
	tmAll=setTimeout("hideAll_top()",200)
	tm=setTimeout("hideSubMenu_top()",200) // 1 second delay to close a submenu
}

function hideAll_top() {
	if (submenuOpen.length != 0) {
		// hide all menu
		for ( i = 0 ; i < submenuOpen.length; i++ ) {
			submenuOpen[i].hide();
		}
		// clear array
		for ( i = 0 ; i < submenuOpen.length; i++ ) {
			submenuOpen.pop();
		}
		
	}
}

function hideSubMenu_top(num){
	if (submenuX.length != 0) {
		for ( i = submenuX.length ; i > 0 ; i-- ) {
			if ( submenuX[i-1] !== submenuX[100000000] && i != num) {
				submenuX[i-1].hide();
			}
		}
	}
}


function hideRollImg(node,imgObjSrc){
	imgObjSrcNoRoll=imgObjSrc.substring(0,imgObjSrc.length-8)+'.gif';
	node.src=imgObjSrcNoRoll;
}
