var activeitem, activatename;
var hideDelay = 250;
var showDelay = 250;
var activateDelay = 30;
var div = '_';


function activate(name)
{
//  alert('activate ' + name);
  if (activeitem) deactivate(activeitem);
  activeitem = name;
  setcookie('activeitem', name);

  var menu = document.getElementById('menu' + div + name);
  removeClass(menu, 'hidden');

  var item = document.getElementById('switch' + div + name);
  setClass(item, 'activeitem');
}

function deactivate(name)
{
  var item = document.getElementById('switch' + div + name);
  removeClass(item, 'activeitem');

  var menu = document.getElementById('menu' + div + name);
  setClass(menu, 'hidden');
}

function switchClick() {
  var name = this.id.split(div)[1];
  if (activeitem != name) activate(name);
}


//----- header -----//
/*
function hideLeftMenu()
{
  document.getElementById('leftmenuheader').className = 'closedheader';
}

function showLeftMenu()
{
  document.getElementById('leftmenuheader').className = 'openedheader';
}

function delayedHide()
{
  if (typeof leftmenushowdelay != 'undefined') clearTimeout(leftmenushowdelay);
  leftmenuhidedelay = setTimeout("hideLeftMenu()", hideDelay);
}

function delayedShow()
{
  if (typeof leftmenuhidedelay != 'undefined') clearTimeout(leftmenuhidedelay);
  leftmenushowdelay = setTimeout("showLeftMenu()", showDelay);
}
*/

//----- content -----//

/*
function deactivate(name)
{
  var item = document.getElementById('header' + div + name);
  removeClass(item, 'activeitem');

  var menu = document.getElementById('menu' + div + name);
  setClass(menu, 'hidden');
}


function headerItemClick() { 
  hideLeftMenu(); 
  activatename = this.id.split(div)[1];
  headeritemdelay = setTimeout("activate(activatename)", activateDelay); 
};


function activate(name)
{
//  alert('activate ' + name);
  if (activeitem && name != activeitem) deactivate(activeitem);
  activeitem = name;
  setcookie('activeitem', name);

  var menu = document.getElementById('menu' + div + name);
  removeClass(menu, 'hidden');

  var item = document.getElementById('header' + div + name);
  if (item) {
    setClass(item, 'activeitem');
//    alert(item.parentNode.nodeType);
    var prn = item.parentNode;
//    alert('parent: ' + prn);
    prn.removeChild(item);
//    alert('firstChild: ' + prn.firstChild);
    prn.insertBefore(item, prn.firstChild);
  }
}
*/

function setopen(menu, id, value)
{
  menu.opened[id] = value;

  var item = document.getElementById(menu.id + div + 'ul' + div + id);

  if (!item) return;

  if (value)
    item.className = 'menuitem';
  else
    item.className = 'hidden menuitem';


  var mark = document.getElementById(menu.id + div + 'mark' + div + id);
  if (!mark) return;

  if (value)
    mark.className = 'opened menumark';
  else
    mark.className = 'closed menumark';
}

function change(menu, id)
{
  //alert('change ' + menu + ': ' + id);
  setopen(menu, id, !menu.opened[id]);
  setopened(menu);
}

function openNode(menu, id)
{
  setopen(menu, id, true);
  setopened(menu);
}

function setopened(menu)
{
  var a = new Array(0);
  for (var i=0; i<menu.opened.length; i++) {
    if (menu.opened[i]) a.push(i);
  }
  setcookie(menu.id + "_opened", a.join('-'));
}

function getopened(menu)
{
  var value = getcookie(menu.id + "_opened");
  if (!value) return;

  var a = value.split('-');
  for (var i=0; i<a.length; i++) {
    menu.opened[a[i]] = true;
    setopen(menu, a[i], true);
  }
}
