// JavaScript Document

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

var submenu = 0;
var submenuX = new Array();
var submenuOpen = new Array();


function printMenu() {
	for ( i = 0; i < menu.length;i++) {
		idPoint = i+1;
		menuPoint = "<td class='menu'  id='"+idPoint+"' onmouseover='this.className=\"menu2\";hideAll();showMenu(this.id); return true;' onmouseout='this.className=\"menu\";initiateHideMenu(); return true' onclick='document.location=\""+httpLocation+menu[i][1]+"\"'>"+menu[i][0]+"</td><td width='2'><img src='skin1/images/menuTopSeparator.gif' alt='' width='2' height='23' border='0'></td>";
		/*document.write(menuPoint);*/
		
		// subMenu
		subMenuRab = subMenu[idPoint];
		if (subMenuRab) {
			printSubMenu(idPoint,subMenuRab);
		}
		// \subMenu 
	}
}


function printSubMenu(idPoint,subMenuRab,num) {
	var num = num ? num : 0;
	if(isDOM) { width = "" }
	if(isMSIE) { width = "width:1px;" }
	if(isOpera) { width = "" }
	subMenuContainer = "<div align='left' 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("+num+");showSubMenu(this.id,"+num+"); return true;' onmouseout='"+css2+"initiateHideSubMenu();' onClick='document.location=\""+httpLocation+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(){
	if(self.tm) clearTimeout(tm) // cancel delayed closing
	if(self.tmAll) clearTimeout(tmAll) // cancel delayed closing
}

function showMenu(menulayer){

		menu=layer(menulayer);		
		submenulayer = 'sub' + menulayer;
		imglayer = menulayer +'Img';
		imglayerUrl = menulayer +'roll.gif';

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

function showSubMenu(menulayer,num){
		menulayerArray = menulayer.split('_');
		menu=layer(menulayer)
		submenulayer = 'sub' + menulayer
		imglayer = menulayer +'Img'
		imglayerUrl = menulayer +'roll.gif'
	
	cancelCloseMenu()
	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();
	//proverka urovnia vlojennosti
	if ( menulayerArray.length < 3 ) {
		pointY = menu.getAbsoluteTop();
	}	else {
		pointY = menu.getAbsoluteTop()-menu.getHeight()+1;
	}
	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(){
	tmAll=setTimeout("hideAll()",300)
}

function initiateHideSubMenu(){
	tmAll=setTimeout("hideAll()",200)
	tm=setTimeout("hideSubMenu()",200) // 1 second delay to close a submenu
}

function hideAll() {
	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(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;
}