function famenus() {
	// Make sure we can do it
	if (!document.getElementById) return false;
	if (!document.getElementById('menu')) return false;
	if (!document.getElementsByTagName) return false;	

	var uls = document.getElementById('menu').getElementsByTagName('ul');
	
	for (var i = 0, ulsLen = uls.length; i < ulsLen; i++) {
		uls[i].myHeight = new fx.Height(uls[i]);
		
		if (uls[i].className == "closed") {
			uls[i].myHeight.hide();
		}
	}

	// hijax the onclick
	var as = document.getElementById('menu').getElementsByTagName('a');
	for (var i = 0, asLen = as.length; i < asLen; i++) {
		if (as[i].className == "dd") {
			as[i].onclick = function() {
					toggle(this);
					return false;
				}
		}
	}
}

function toggle(obj) {
	if (obj.parentNode.className.substr("closed")) {
		obj.parentNode.className = obj.parentNode.className.replace("closed ","");
	}
	
	var uls = obj.parentNode.getElementsByTagName('ul');
	for (var i = 0, ulsLen = uls.length; i < ulsLen; i++) {
		uls[i].className = (uls[i].className != '' ? '' : 'closed');
		
		if (uls[i].className.substr("closed")) {
			uls[i].parentNode.className = "closed " + uls[i].parentNode.className;
			uls[i].myHeight.hide();
		} else {
			uls[i].myHeight.custom(0, uls[i].myHeight.el.scrollHeight);	
		}
	}
}

window.onload = famenus;


