var collapse_regex = /hide/i;
var collapsemenu_regex = /menuitem/i;
var cookie_name = 'collapse_obj';
    
function init() {
	collapseAll();
	var cookie = getCookie('collapse_obj');
	if(cookie) {
		var values = cookie.split(',');
		for(var i = 0; i < values.length; i++) {
			var itm = getItem(values[i]);
			if(itm)
				itm.style.display = '';
		}
	}
}

function collapseAll() {
	var items = document.getElementsByTagName('*');	
	for(i in items) {
		if(collapse_regex.test(items[i].className)) {
			items[i].style.display = 'none';
		} else if(collapsemenu_regex.test(items[i].className)) {
			items[i].style.display = 'none';
		}
	}
}

//show all
function showAll() {
	var items = document.getElementsByTagName('*');	
	for(i in items) {
		if(collapse_regex.test(items[i].className)) {
			items[i].style.display = '';
		}
	}
}

//hide all
function hideAll() {
	var items = document.getElementsByTagName('*');	
	for(i in items) {
		if(collapse_regex.test(items[i].className)) {
			items[i].style.display = 'none';
		}
	}
}

function makeCookie(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 getCookie(name) {
	if(document.cookie == '')
		return false;
		var firstPos;
		var lastPos;
		var cookie = document.cookie;
		firstPos = cookie.indexOf(name);
		if(firstPos != -1) {
			firstPos += name.length + 1;
			lastPos = cookie.indexOf(';', firstPos);
			if(lastPos == -1)
				lastPos = cookie.length;
			return unescape(cookie.substring(firstPos, lastPos));
        } else
			return false;
}

function getItem(id) {
	var itm = false;
	if(document.getElementById)
		itm = document.getElementById(id);
		else if(document.all)
			itm = document.all[id];
		else if(document.layers)
			itm = document.layers[id];
		return itm;
}

function toggleItem(id) {
	itm = getItem(id);
	if(!itm)
		return false;
		if(itm.style.display == 'none')
			itm.style.display = '';
		else
			itm.style.display = 'none';
		cookie = getCookie(cookie_name);
		values = new Array();
		newval = new Array();
		add    = 1;

	if (cookie) {
		values = cookie.split(',');
		for(var i = 0; i < values.length; i++) {
			if(values[i] == id)
				add = 0;
			else
				newval[newval.length] = values[i];
		}
	}

	if(add)
		newval[newval.length] = id;
		makeCookie(cookie_name, newval.join(','), 120);
		return false;
}