MenuCollapser.nodelets = new Array;


function createCookie(name,value,days)
{
	if (days)
	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}
	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function readCookie(name)
{
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++)
	{
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name)
{
	createCookie(name,"",-1);
}

function MenuCollapser() {
  var allTDS = document.getElementsByTagName('td');

  for (var i in allTDS) {
    var title = allTDS[i]
    if ( title.className == "nodelet_title" ) {
      var nodelet = allTDS[(i*1)+1];
      MenuCollapser.nodelets[title.id] = nodelet.id;
      title.onmousedown = MenuCollapser.collapse;
      nodelet.style.display = MenuCollapser.isVisible(nodelet.id)?"":"none";
      i++;
    }
  }
}

MenuCollapser.isVisible = function(nodeletid) {
  if (readCookie(nodeletid)) {
    return true;
  } else {
    return false;
  }
}

MenuCollapser.collapse = function() {
  var nodeletid = MenuCollapser.nodelets[this.id]; 
  var nodelet = document.getElementById(nodeletid);
  if ( nodelet.style.display == "" ) {
    eraseCookie(nodeletid);
    nodelet.style.display = "none";
  }
  else if ( nodelet.style.display == "none" ) {
    createCookie(nodeletid,"visible",10);
    nodelet.style.display = "";
  }
}

if (window.onload) {
  var f = window.onload;
  window.onload = function() { MenuCollapser(); f() };
} else {
  window.onload = MenuCollapser;
}


