/*
Description:	JS file for iserv-menus. No time for comment yet
Author:		Vlad Liderman
Date:		08-10-2002
*/

var menu2_hi_class="MenuTable_2El_Hi"	//Menu2 Hi Class (mouse over)
var menu2_lo_class="MenuTable_2El_Lo"	//Menu2 Lo Class (mouse out)

var	cur_submenu=null,		//System variables
	old_submenu=null,
	over_submenu=false,
	timerID=-1;

function menu1_class(el, isHi){
	if (!el || (typeof el)!="object") return;
	
	if (isHi){	//Hi
//                    		el.className=menu1_hi_class;		
		//show children
		if (el.submenu){
			//var obj=document.all.namedItem(el.submenu)
			var obj=document.all[el.submenu]
			if (!obj && (typeof obj)!="object") return;

			//hide old submenu
			over_submenu=false;
			if (obj!=cur_submenu){
				hide_submenu(true);
			
				//set position
				var SelTop=el.offsetHeight+1, SelLeft=0, cur_el=el, Width=el.offsetWidth;

				while(cur_el){
					SelTop+=cur_el.offsetTop
					SelLeft+=cur_el.offsetLeft
					cur_el=cur_el.offsetParent; 
				}
				
			        obj.width=Width;
				with(obj.style){
					top=SelTop;
					left=SelLeft;
					visibility="visible"
				}
			
				cur_submenu=obj;			
			}//if not shown yet
			else {
			//Возможно что таймер на скрытие еще работает - его надо сбросить
				if (timerID!=-1) clearTimeout(timerID); timerID=-1;
			}
		}
	} else {
//                    		el.className=menu1_lo_class;
		//hide children
		if (el.submenu){
//			var obj=document.all.namedItem(el.submenu)
			var obj=document.all[el.submenu]

			if (!obj && (typeof obj)!="object") return;
			if (cur_submenu) old_submenu=cur_submenu;
			cur_submenu=null;
			over_menu=false;
			timerID=setTimeout("hide_submenu()",500)
			over_submenu=false;
			//obj.style.visibility='hidden'
			
		}

	}
}

//second level menu hadlers
function menu2_class(el, isHi){
	if (!el || (typeof el)!="object") return;
	
	if (isHi){	//Hi
		if (old_submenu) over_submenu=true;
		el.className=menu2_hi_class;		
	} else {
		el.className=menu2_lo_class;
		over_submenu=false;
		if (cur_submenu) old_submenu=cur_submenu;
		cur_submenu=null;
		timerID=setTimeout("hide_submenu()",500);
	}
}

function menu2_click(el){
	if (!el || (typeof el)!="object") return;
	if (el.href) document.location=el.href;
}

function hide_submenu(strict){
	if (!old_submenu || (typeof old_submenu)!="object") return;
	if (cur_submenu==old_submenu) return;
	if (over_submenu && !strict) return;
	
	if (timerID!=-1) clearTimeout(timerID); timerID=-1;
	
	old_submenu.style.visibility="hidden"
	old_submenu=null;
	over_submenu=false;
}
