function showHideSubTree(e)
{
  var a;

  // internet explorer
  if (window.event)
  {
    a = window.event.srcElement;
  }
  else
  // DOM
  if (e.target)
  {
    a = e.target;
  }
  else
  {
    return;
  }

  var ul = nextUl(a);
  ul = nextUl(ul.nextSibling);

  if (ul == null)
  {
    return;
  }

  if (ul.style.display == "none")
  {
    ul.style.display = "block";
    a.className = "expanded_node";
  }
  else
  {
    ul.style.display = "none";
    a.className = "collapsed_node";
  }
}

function initSitePlan()
{
  var site_plan = document.getElementById('site_plan_box');
  if (!site_plan)
  {
    return;
  }
  var nodes = site_plan.getElementsByTagName('a');
  for (var i = 0; i < nodes.length; ++i)
  {
    nodes[i].onclick = showHideSubTree;
  }
}

addLoadListener(initSitePlan);

