var menu_obj = null;
var menu_sub_obj = null;

var mObj_top;
var mObj_left;
var mObj_width;
var mObj_height;

var mObjSub_width = 0;
var mObjSub_height = 0;

function GetPageOffset(obj)
{
  var top = 0;
  var left = 0;
  while (obj.nodeName != 'BODY')
  {
    top = top + obj.offsetTop;
    left = left + obj.offsetLeft;
    obj = obj.parentNode;
  }

  var ar = new Array();
  ar[0] = top;
  ar[1] = left;

  return ar;
}

/// On Menu Over
function mOver(obj, msId)
{
  if (!(menu_obj === obj)) 
  {
    MenuSwitchOff();
  };
  menu_obj = obj;

  var cn = obj.className;
  if (!((cn == 'mItemThis')||(cn == 'mItemThisUp'))) {obj.className = 'mItemUp';}
  else {obj.className = 'mItemThisUp';};

  ///Size
  var ar = GetPageOffset(obj);
  mObj_top = ar[0];
  mObj_left = ar[1];
  mObj_width = obj.offsetWidth;
  mObj_height = obj.offsetHeight;

  ShowSubMenu(obj, msId);
}

///
function ShowSubMenu(obj, msId)
{
  var cObj = obj.childNodes.item(0).childNodes.item(0);
  cObj.style.backgroundImage = 'url(/img/left/mbg.gif)';

  if (msId == undefined) return;
  var objSub = document.getElementById(msId);
  if (!objSub) return;
  
  
  ///alert(cObj.style.backgroundImage);
  cObj.style.backgroundImage = 'url(/img/left/marrow2.gif)';

  objSub.style.display = 'inline';
  objSub.style.top = mObj_top;
  objSub.style.left = mObj_left + mObj_width;

  menu_sub_obj = objSub; 
  mObjSub_width = objSub.offsetWidth;
  mObjSub_height = objSub.offsetHeight;
}


/// Check Mouse Cursor Position -> Hide Menu
function CheckMouse(ev)
{
  if (menu_obj == null) return;
  var x = ev.clientX;
  var y = ev.clientY + document.body.scrollTop;

/*

A1______A2________ B2
  |_____|         |
A3    A4|         |
        |_________|
        B3        B4
*/

  var A1y = mObj_top;
  var A1x = mObj_left;
  var AB2x = mObj_left + mObj_width + mObjSub_width;
  var A3y = mObj_top + mObj_height;
  var A4x = mObj_left + mObj_width;
  var B3y = mObj_top + mObjSub_height;

  /// X-check
  var xOut = false;
  if ((x<A1x)||(x>AB2x)) xOut = true;

  /// Y-Check
  var yOut = false;
  if (xOut == false)
  {
    var outMainBottom = (y>A3y)&&((x>A1x)&&(x<A4x));
    var outSubBottom = ((y>B3y)&&(menu_sub_obj)); /// Only if SubMenu is ON
    if ((y<A1y)||outMainBottom||outSubBottom) yOut = true;
    ///alert(y + '|' + A1y + '| =' + yOut);
  }
 
  /// SwitchOff Menu
  if ((xOut)||(yOut)) MenuSwitchOff();
}

function MenuSwitchOff()
{
  if (menu_obj == null) return;
  var cn = menu_obj.className;
  if (!((cn == 'mItemThisUp')||(cn == 'mItemThis'))) {menu_obj.className = 'mItem';}
  else {menu_obj.className = 'mItemThis';};

  var cObj = menu_obj.childNodes.item(0).childNodes.item(0);
  cObj.style.backgroundImage = 'url(/img/left/mbg.gif)';
  menu_obj = null;
  
  if (menu_sub_obj == null) return;
  menu_sub_obj.style.display = 'none';
  mObjSub_width = 0;
  mObjSub_height = 0;
  menu_sub_obj = null;

}