
//alert('BROWSER');
var loaded = false;
var mouseX = 0;
var mouseY = 0;
var last_menu_id = 0;
var is_cursor_on_menu = false;
var border_left = new Array();
var border_right = new Array();
var border_top = new Array();
var border_bottom = new Array();
var over_id = 0;
var out_id = 0;
var tree_arr = new Array();

function getObjectPosition(obj)
 {
 	var x = 0;
	var y = 0;
	
	while( obj !== null )
	 {
		x+= obj.offsetLeft;
		y+= obj.offsetTop;
		obj = obj.offsetParent;
	 }
	return new Array(x, y);
 }

function setLayerVisibility( id, on )
 {
	var layer = document.getElementById('vmd'+id);
	layer.style.visibility = on ? 'visible' : 'hidden';
	
	//изменяем фон 
	var over = document.getElementById('over'+id);
	if(over) {
      over.style.background= on ? '#AE1915' : '#ffffff';
	}  
    //изменяем цвет ссылки
    var link = document.getElementById('link'+id); 
    if(link) {
      link.style.color= on ? '#f0f0f0' : '#868A8F';
	}
      
    var over2 = document.getElementById('over2'+id);   
    if(over2) {
      over2.style.background = on ?  '#C03C38' : '#AE1915';      
    }  
 }

 
function checkMenuVisibility() 
 {
	
	show_last_menu = false;
	parent_array = new Array();
	parent_id = over_id;
	
	if (last_menu_id && mouseX >= border_left[last_menu_id] &&
			mouseX <= border_right[last_menu_id] &&
			mouseY >= border_top[last_menu_id] &&
			mouseY <= border_bottom[last_menu_id]
	   )
	 {
		show_last_menu = true;
		parent_id = last_menu_id;
	 }
	else
	 {
	 	last_menu_id = menu_parent_array[over_id];
	 }
	
	while (parent_id)
	{
		parent_array[parent_array.length] = parent_id;
		parent_id = menu_parent_array[parent_id];
	}
	
	for( var i=0; i<menu_id_array.length; i++ )
	 {
		current_id = menu_id_array[i];
		current_is_visible = (last_menu_id == current_id && is_cursor_on_menu);

		for (var j=0; j<parent_array.length;j++)
		 {
		 	if( parent_array[j] == current_id ) {
				current_is_visible=true;
			}
		 }
		setLayerVisibility(current_id, current_is_visible);
	 }
	 
 }

function setMenuPosition(id)
 {		
 	
	var parent = document.getElementById('mi'+id);
	var coord = getObjectPosition(parent);
	var parent_left = coord[0];
	var parent_top = coord[1];
	var parent_right = parent_left + parent.offsetWidth;
	var parent_bottom = parent_top + parent.offsetHeight;
	
	border_left[id] = parent_left + (0);
	border_right[id] = parent_left + (0);
	border_top[id] = parent_top + (-5);
	border_bottom[id] = parent_top + (20);
	
	if( border_left[id] > parent_left )  {
		border_left[id] = parent_left;
	}
	if( border_right[id] < parent_right ) {
		border_right[id] = parent_right;
	}
	if( border_top[id] > parent_top ) {
		border_top[id] = parent_top;
	}
	if( border_bottom[id] < parent_bottom ) {
		border_bottom[id] = parent_bottom;
	}
	
	var menu_left = parent_left + (0);
	var menu_top = parent_top + (0);
	
	if( menu_left < parent_right ) menu_left = parent_right;
	
	
	var menu = document.getElementById('vmd'+id);
		
	var menuWidth = menu.offsetWidth; 
	var menuHeight = menu.offsetHeight; 
	
	var windowWidth = window.innerWidth;
	
	var windowHeight = window.innerHeight;
	
	var scrollTop = pageYOffset;
	
	var scrollLeft = pageXOffset;

	if( menuHeight + menu_top > windowHeight + scrollTop ) {
		menu_top = windowHeight + scrollTop - menuHeight;
	}
	
	if( menu_top < scrollTop ) {
		menu_top = scrollTop;
	}
	
	//if( menuWidth + menu_left > windowWidth + scrollLeft ) {
	//	menu_left = windowWidth + scrollLeft// - menuWidth
		//alert(menu_left);
	//	var over = document.getElementById('over'+id)
	//	menu_left = windowWidth + scrollLeft - (menuWidth-over.offsetWidth);
	//}
	if( menu_left < scrollLeft ) {
		menu_left = scrollLeft;
	}
	
	menu.style.top = menu_top + parent.offsetHeight+1;
	if('BROWSER'=='MSIE') {
		menu.style.left = menu_left - parent.offsetWidth-18;
	}
	else {
		menu.style.left = menu_left - parent.offsetWidth-19;
	    if(parent_left==437) {
		   menu.style.left = menu_left - parent.offsetWidth-18;
	    }		
	}

 }

function changeM( on, id, id1 )
 {
	if( !loaded ) {
		return;
	}

	if( on )
	 {
		last_menu_id = id;
		setMenuPosition(id);
	 }
	
	is_cursor_on_menu = ( on == 1 )

	if(!id || !id1) {
		return;
	}

	var tab = document.getElementById('table'+id);
	var parent = document.getElementById('vmd'+id1);
	var self = document.getElementById('vmd'+id); 
	var mi = document.getElementById('mi'+id);
	var v_shift, h_shift, a;

	if('BROWSER'=='MSIE') {
		v_shift = -2;
		h_shift = parent.offsetWidth - 2;
		a = 1;
	}
	else
	{
		v_shift = -6;
		h_shift = parent.offsetWidth + 58;
		a = -18;		
	}	
	
	if(!tab) {
		return;
	}
	
	tab.style.position = 'relative';
	tab.style.left = a;
	tab.style.top = - mi.offsetHeight + v_shift;
	self.style.left = parent.offsetLeft + h_shift;
 }

function SetMouseXY(e) 
 {
  	mouseX = e.pageX;
mouseY = e.pageY;
 }

 document.onmousemove = SetMouseXY;


window.onload = function()
 {
	loaded = true;
	
	for( var i=0; i<menu_id_array.length; i++ )
	 {
		var id = menu_id_array[i];
		setMenuPosition(id);
		
		var layer = document.getElementById('vmd' + id);
		layer.onmouseover = function () {
			over_id = this.id.slice(3,100); 
		};
		layer.onmouseout = function () {
			over_id = 0;
		};
	 }
	
	setInterval( "checkMenuVisibility()", 200 );
 }
 
//addition
function changeB(on, id) { 
	//изменяем фон 
	var over = document.getElementById('over'+id);
	if(over) {
      over.style.background= on ? '#AE1915' : '#ffffff';
	}

    //изменяем цвет ссылки
    var link = document.getElementById('link'+id); 
    if(link)  {
      link.style.color= on ? '#f0f0f0' : '#868A8F';
	}
}

function changeC(on, id) { 
	//изменяем фон 
	var over2 = document.getElementById('over2'+id);
	if(over2)
      over2.style.background= on ? '#C03C38' : '#AE1915';
}
