var current_submenucell_hover;

function init_submenu_people()
{
  current_submenucell_hover = null;
  
  var submenu = document.getElementById("PEOPLESUBMENU_CELLCONTAINER");
  
  if(submenu)
  {
    var cell=0;
    var current_cell = document.getElementById("SUBMENUCELL" + cell);
    
    while(current_cell)
    {
      addEvent(current_cell, "mouseout",  submenu_entry_unfocused, false);
      addEvent(current_cell, "mouseover", submenu_entry_focused,   false);
      addEvent(current_cell, "focus",     submenu_entry_focused,   false);
      addEvent(current_cell, "blur",      submenu_entry_unfocused, false);
//      addEvent(current_cell, "click",	 submenu_entry_clicked, false);
      cell++;
      current_cell = document.getElementById("SUBMENUCELL" + cell);
    }
    
  }
}

function uninit_submenu_people()
{
}


function submenu_entry_focused(e)
{
//  my_alert("submenu_entry_focused");
  if(is_ie)
  {
    if(is_element_in_a_submenucell(e.srcElement))
      change_submenucell_hover(find_parent_submenucell(e.srcElement));
  }
  else
  {
    if(is_element_in_a_submenucell(e.currentTarget))
      change_submenucell_hover(find_parent_submenucell(e.currentTarget));
  }
}

function submenu_entry_unfocused(e)
{
  if(is_ie)
  {
    if(is_element_a_submenucell(e.srcElement))
      change_submenucell_hover(null);
  }
  else
  {
    if(is_element_a_submenucell(e.currentTarget))
    {
//      my_alert("submenu_entry_unfocused: " + e.currentTarget.id);
      change_submenucell_hover(null);
    }
  }
}

// answers true if the elt is in a submenucell or IS a submenucell
function is_element_in_a_submenucell(elt)
{
 return (find_parent_submenucell(elt) != null);
}

function find_parent_submenucell(elt)
{
 var current_element = elt;
 
 while (current_element != document &&
        current_element.id != "PEOPLESUBMENU_CELLCONTAINER" && 
        !is_element_a_submenucell(current_element)
	)
 {
   current_element = current_element.parentNode;
 }
 
  if (is_element_a_submenucell(current_element))
    return current_element;
  else
    return null;
}

function is_element_a_submenucell(elt)
{
  return (elt.className == "FULLNAME" && 
          (elt.parentNode.parentNode.className == "LEFT" || 
	   elt.parentNode.parentNode.className == "LEFTHIGHLIGHTED"));
}

function change_submenucell_hover(elt)
{
  if(current_submenucell_hover)
    set_submenucell_normal(current_submenucell_hover);
  
  current_submenucell_hover = elt;
  if(current_submenucell_hover)
    set_submenucell_highlighted(current_submenucell_hover);
}

function set_submenucell_normal(obj)
{
  if(obj.parentNode.parentNode.className == "LEFTHIGHLIGHTED")
  {
    if(obj.parentNode.parentNode.parentNode.className == "ROW")
      obj.parentNode.parentNode.className = "LEFT";
    
    set_cursor(obj, "auto");
  }
}

function set_submenucell_highlighted(obj)
{
  if(obj.parentNode.parentNode.className == "LEFT")
    obj.parentNode.parentNode.className = "LEFTHIGHLIGHTED";

  set_cursor(obj, "pointer");
}

