function initCrossBrowserLib(){
  _mac=navigator.userAgent.indexOf('Mac')!=-1;
  _ie512=navigator.userAgent.indexOf('MSIE 5.12')!=-1;
  _dom=document.all?(document.getElementById?2:1)
                     :(document.getElementById?4:(document.layers?3:0));
  _createLayerNo=0;
}
initCrossBrowserLib();

function getDivFromName(nm){
  if(_dom==4 || _dom==2) return document.getElementById(nm);
  if(_dom==1)            return document.all(nm);
  if(_dom==3){
    var s='';
    for(var i=1; i<arguments.length; i++) s+='document.layers.'+arguments[i]+'.';
    return eval(s+'document.layers.'+nm);
  }
  return null;
}

function getDivName(div){
  if(_dom==4 || _dom==2 || _dom==1) return div.id;
  if(_dom==3)                       return div.name;
  return '';
}

function getDivLeft(div){
  if(_dom==4 || _dom==2) return div.offsetLeft;
  if(_dom==1)            return div.style.pixelLeft;
  if(_dom==3)            return div.left;
  return 0;
}

function getDivTop(div){
  if(_dom==4 || _dom==2) return div.offsetTop;
  if(_dom==1)            return div.style.pixelTop;
  if(_dom==3)            return div.top;
  return 0;
}

function getDivWidth (div){
  if(_dom==4 || _dom==2) return div.offsetWidth;
  if(_dom==1)            return div.style.pixelWidth;
  if(_dom==3)            return div.clip.width;
  return 0;
}

function getDivHeight(div){
  if(_dom==4 || _dom==2) return div.offsetHeight;
  if(_dom==1)            return div.style.pixelHeight;
  if(_dom==3)            return div.clip.height;
  return 0;
}

function setDivHeight(div, height){
//  if(_dom==4 || _dom==2) div.offsetHeight = height;
  if(_dom==1 || _dom==4 || _dom==2)            div.style.pixelHeight = height;
  if(_dom==3)            div.clip.height = height;
  return 0;
}

function moveDivTo(div,left,top){
  if(_dom==4){
    div.style.left=left+'px';
    div.style.top =top +'px';
    return;
  }
  if(_dom==2 || _dom==1){
    div.style.pixelLeft=left;
    div.style.pixelTop =top;
    return;
  }
  if(_dom==3){
    div.moveTo(left,top);
    return;
  }
}

function moveDivBy(div,left,top){
  if(_dom==4){
    div.style.left=div.offsetLeft+left;
    div.style.top =div.offsetTop +top;
    return;
  }
  if(_dom==2){
    div.style.pixelLeft=div.offsetLeft+left;
    div.style.pixelTop =div.offsetTop +top;
    return;
  }
  if(_dom==1){
    div.style.pixelLeft+=left;
    div.style.pixelTop +=top;
    return;
  }
  if(_dom==3){
    div.moveBy(left,top);
    return;
  }
}

function setDivVisibility(div,visible){
  if(_dom==4 || _dom==2 || _dom==1){
    div.style.visibility=(visible)?'inherit':'hidden';
    return;
  }
  if(_dom==3){
    div.visibility      =(visible)?'inherit':'hide';
    return;
  }
}

// menu functions

var _parents, _menus;
var TimerID;
var rightY = Array();
var prepared = false;


function menu_prepare()
{
	var screen_div = getDivFromName('main_menu_container');
	var screenWidth = getDivWidth(screen_div);
	for (var i = 0; i < parents.length; i++)
	{
		parent_div = getDivFromName(parents[i]);
		if (parent_div != null)
			rightY[i] = screenWidth - getDivLeft(parent_div);
	}
	prepared = true;
}

function menu_init(parents, menus)
{
   var menu_top = menu_get_top();
   var parent_top = menu_get_parent_top();
   var currY = 0;
   var screen_div = getDivFromName('main_menu_container');
   var screenWidth = getDivWidth(screen_div);
   var xOffset = 5;
   
   if (!prepared) return;
   
   for (var i = 0; i < parents.length; i++)
   {
      parent_div = getDivFromName(parents[i]);
      menu_div = getDivFromName(menus[i]);
	  if ((parent_div != null) && (menu_div != null))
	  {
         currY += getDivWidth(parent_div);
		 moveDivTo(menu_div, screenWidth - rightY[i] - xOffset, menu_top + 3);
		 moveDivTo(parent_div, screenWidth - rightY[i] - 3, parent_top + 5);
	  }
   }
}

function menu_show(parent, menu)
{
   clearTimeout(TimerID);
   menu_div = getDivFromName(menu);
   parent_div = getDivFromName(parent);
   parent_div.style.color = '#EE7500';
   parent_div.style.borderBottomColor = '#EE7500';
   setDivVisibility(menu_div, true);
   for (i=0; i<parents.length; i++)
   {
      if (menus[i] != menu)
	  {
	     menu_hide(parents[i], menus[i]);
	  }
   }
}

function menu_hide(parent, menu)
{
   TimerID = setTimeout("real_menu_hide('"+parent+"', '"+menu+"');", 150);
}

function real_menu_hide(parent, menu)
{
   //if (do_not_hide) return;
   menu_div = getDivFromName(menu);
   parent_div = getDivFromName(parent);
   parent_div.style.color = '#5e005e';
   if (menu_div != null)
      setDivVisibility(menu_div, false);
}

function menu_hide_all()
{
   
}

function menu_get_top()
{
	menu_container = getDivFromName("main_menu_container");
	return getDivTop(menu_container)+getDivHeight(menu_container);
}

function menu_get_parent_top()
{
	menu_container = getDivFromName("main_menu_container");
	return getDivTop(menu_container);
}


/*if(_dom==1 || _dom==2)
	document.body.onmousemove=menu_update;
else(document.layers)
{
	window.captureEvents(Event.MOUSEMOVE); window.onmousemove=menu_update;
}*/

function menu_update()
{
	setTimeout("");
}
