function selectItem(id) {
  var item = $(id);
  hideAllSubItems(item);
  highlightNestedId(id);
  return false;
}


function getPageParameter() {
//  var searchString = document.location.search;

  // strip off the leading '?'
  var searchString = document.location.search.substring(1);

  var nvPairs = searchString.split("&");

  for (i = 0; i < nvPairs.length; i++)
  {
       var nvPair = nvPairs[i].split("=");
       var name = nvPair[0];
       var value = nvPair[1];
       if ((name == 'cat3_id') && (typeof(value) != 'undefined')) {
         return value;
       }
  }
  
  return;
}
  
function hideAllSubItems(clickedItem) {
  var i, len;
  var ancestors = clickedItem.ancestors();
  var subItems = $$('.subitems1');
  var currents = $$('.current');

  for (i = 0, len = subItems.length; i < len; i++) {
      hideElement(subItems[i]);
  }
  
  for (i = 0, len = currents.length; i < len; i++) {
      currents[i].removeClassName('current');
      currents[i].removeClassName('subitems');
  }
}

function highlightNestedId(id) {
  var item = $(id);
  item.addClassName('current');
  if (typeof(item.next('ul')) != 'undefined') {
    item.addClassName('subitems');
    showElement(item.next('ul'));
  }
  
  var current_li = item.up('li');
  
  while (typeof(current_li) != 'undefined') {
    current_li.addClassName('current');
    if (typeof(current_li.up('ul').previous('a')) == 'undefined') {
      break;
    }
    current_li.up('ul').previous('a').addClassName('current subitems');
    showElement(current_li.up('ul'));

    current_li = current_li.up('ul').up('li');
  }
}    

function showElement(id) {
  var elem = $(id);
  elem.style.display = "block";
  elem.style.visibility = "visible";
}

function hideElement(id) {
  var elem = $(id)
  elem.style.display = "none";
  elem.style.visibility = "hidden";
  
  elem.removeClassName('current');
  elem.removeClassName('subitems');
}

function initMenuItems() {
  var menuItems = $$('.submenu_expandable');
  /* enable this block of code to allow for expanding menus without reloads
    for (var i = 0, len = menuItems.length; i < len; i++) {
    menuItems[i].onclick = new Function('evt', 'return selectItem("'+menuItems[i].id+'")');
  }
  */
  var selected = getPageParameter();
//  if (typeof(selected) != "undefined") {
  if (selected != "") {
    try {
      highlightNestedId(selected);  
    } catch (e){}
  }
}

Event.observe(window, 'load', initMenuItems);


