var current_menucell_hover;

function init_menu()
{
//  my_alert("init_menu: begin");
  
  current_menucell_hover = null;
  
  var menu = document.getElementById("MENUCELL_CONTAINER");
  
  if(menu)
  {
    var cell=0;
    var current_cell = document.getElementById("MENUCELL" + cell);
    
    while(current_cell)
    {
      addEvent(current_cell, "mouseout",  menu_entry_unfocused, false);
      addEvent(current_cell, "mouseover", menu_entry_focused,   false);
      addEvent(current_cell, "focus",     menu_entry_focused,   false);
      addEvent(current_cell, "blur",      menu_entry_unfocused, false);
//      addEvent(current_cell, "click",	 menu_entry_clicked, false);
      cell++;
      current_cell = document.getElementById("MENUCELL" + cell);
    }
    
  }
  
  init_submenu_people();
//  my_alert("init_menu: end");
}

function uninit_menu()
{
  uninit_submenu_people();
}
/*
function menu_entry_clicked(e)
{
  e.stopPropagation();
}
*/

function menu_entry_focused(e)
{
//  my_alert("menu_entry_focused");

//  window.setCursor("pointer");
  if(is_ie)
  {
    if(is_element_in_a_menucell(e.srcElement))
      change_menucell_hover(find_parent_menucell(e.srcElement));
  }
  else
  {
    if(is_element_in_a_menucell(e.currentTarget))
      change_menucell_hover(find_parent_menucell(e.currentTarget));
  }
}

function menu_entry_unfocused(e)
{
  if(is_ie)
  {
    if(is_element_a_menucell(e.srcElement))
      change_menucell_hover(null);
  }
  else
  {
    if(is_element_a_menucell(e.currentTarget))
    {
//      my_alert("menu_entry_unfocused: " + e.currentTarget.id);
      change_menucell_hover(null);
    }
  }
}

function is_element_in_a_menucell(elt)
{
 return (find_parent_menucell(elt) != null);
}

function find_parent_menucell(elt)
{
 var current_element = elt;
 
 while (current_element != document &&
        current_element.className != "MENUCELL_CONTAINER" && 
        !is_element_a_menucell(current_element)
	)
 {
   current_element = current_element.parentNode;
 }
 
  if (is_element_a_menucell(current_element))
    return current_element;
  else
    return null;
}

// answers true if the elt is in a menucell or IS a menucell
function is_element_a_menucell(elt)
{
  return (elt.className == "MENUCELL" || 
          elt.className == "MENUCELLLEVEL2"|| 
          elt.className == "CURRENT");
}

function change_menucell_hover(elt)
{
  if(current_menucell_hover)
    set_menucell_normal(current_menucell_hover);
  
  current_menucell_hover = elt;
  if(current_menucell_hover)
    set_menucell_highlighted(current_menucell_hover);
}

function set_menucell_normal(obj)
{
  if(obj.className == "CURRENT")
  {
    if(obj.parentNode.className == "MENUENTRY")
      obj.className = "MENUCELL";
    else if(obj.parentNode.className == "MENUENTRYLEVEL2")
      obj.className = "MENUCELLLEVEL2";
    
    set_cursor(obj, "auto");
  }
}

function set_menucell_highlighted(obj)
{
  if(obj.className == "MENUCELL" || obj.className == "MENUCELLLEVEL2")
    obj.className = "CURRENT";

  set_cursor(obj, "pointer");
}

/*

function set_bgcolor_normal(obj)
{
  if(obj.className == "MENUCELL")
    set_bgcolor(obj, "#9999FF");
  else if(obj.className == "MENUCELLLEVEL2")
    set_bgcolor(obj, "#CCCCFF");
}

function set_bgcolor_hover(obj)
{
  set_bgcolor(obj, "white");
}
*/


