var remember = new Array();
var remember2 = new Array();
var checkIt;
var DHTML = (document.getElementById || document.all || document.layers);

function show(name,lvl,obj) {
  if (!DHTML) return;
  checkUserInput();
  if (remember[lvl] && remember[lvl] == name) return;
  if (remember[lvl]) closeAll(lvl);
  if (name){
    var x = getObj(name);
    x.visibility = 'visible';
  }
  remember[lvl] = name;
  if (!obj) {
    remember[lvl] = name;
    if (this.parentNode) y = this.parentNode;
    else if (this.parentElement) y = this.parentElement;
    else return;
  } else {
    if (obj.parentNode) y = obj.parentNode;
    else if (obj.parentElement) y = obj.parentElement;
    else return;
  }
  if (y.className == 'dhtmlover') return;
  y.className = 'dhtmlover';
  if (remember2[lvl]) remember2[lvl].className = 'dhtml';
  remember2[lvl] = y;
}

function closeAll(lvl) {
  for (i=remember.length - 1;i>=lvl;i--) {
    if (remember[i]) { //IE4 Mac
      var x = getObj(remember[i]);
      x.visibility = 'hidden';
    }
    remember[i] = null;
    if (remember2[i]) {
      remember2[i].className = 'dhtml';
      remember2[i] = null;
    }
  }
}

function checkUserInput() {
  if (checkIt) clearTimeout(checkIt);
  checkIt = setTimeout('closeAll(1)',5000);
}

function getObj(name) {
  if (document.getElementById) {
    if (document.getElementById(name) == null) return "";
    else return document.getElementById(name).style;
  } else if (document.all) {
    if (document.all[name] == null) return "";
    else return document.all[name].style;
  } else if (document.layers) {
    if (document.layers[name] == null) return "";
    else return document.layers[name];
  } else return "";
}
