function toggle(item) {
		if (!document.getElementById(item)) { return; }
		if (document.getElementById(item).className=='title-closed') {
			var open_menus = getOpenList();
			for (var i=0; i<open_menus.length; i++)
			{
				if (open_menus[i] && open_menus[i] != item)
				{
					delOpenFolder(open_menus[i]);
					document.getElementById(open_menus[i]).className = 'title-closed';
					document.getElementById(open_menus[i]+'_list').className = 'closed';
				}
			}

			addOpenFolder(item);
			document.getElementById(item).className = 'title-open';
			document.getElementById(item+'_list').className = 'open';
		} else {
			delOpenFolder(item);
			document.getElementById(item).className = 'title-closed';
			document.getElementById(item+'_list').className = 'closed';
		}
}

function init_toggle()
{
	var open_menus = getOpenList();
	var menu = document.getElementById('sidebar');	
	var menu_titles = menu.getElementsByTagName('DIV');
	var menu_blocks = menu.getElementsByTagName('UL');

	for(var i=0; i<menu_titles.length; i++)
	{
		if (menu_titles[i].className == 'title-closed')
		{
			for(var j=0; j<open_menus.length; j++)
			{
				if (open_menus[j] == menu_titles[i].id) { menu_titles[i].className = 'title-open'; break; }
			}
		}
	}

	for (var i=0; i<menu_blocks.length; i++)
	{
		if (menu_blocks[i].className == 'closed')
		{
			for(var j=0; j<open_menus.length; j++)
			{
				if (open_menus[j]+'_list' == menu_blocks[i].id) { menu_blocks[i].className = 'open'; break; }
			}
		}
	}
}

function addOpenFolder(folder) {
	theList = getOpenList();
	theList.push(folder);
	var curCookie = "treenav_open=" + escape(theList.join('-|-')) + "; path=/";
	document.cookie = curCookie;
}

function delOpenFolder(folder) {
	theList = getOpenList();
	newList = new Array();
	curFolder = theList.pop();
	while(curFolder){
		if (curFolder != folder) {
			newList.push(curFolder);
		}
		curFolder = theList.pop();
	}
	var curCookie = "treenav_open=" + escape(newList.join('-|-')) + "; path=/";
	document.cookie = curCookie;
}

function getOpenList() {
	var dc = document.cookie;
	var prefix = "treenav_open=";
	var begin = dc.indexOf("; " + prefix);
	if (begin == -1) {
		begin = dc.indexOf(prefix);
		if (begin != 0) return new Array();
	} else
		begin += 2;
	var end = document.cookie.indexOf(";", begin);
	if (end == -1)
		end = dc.length;
	var theList = unescape(dc.substring(begin + prefix.length, end));
	return theList.split('-|-');
}
