var elemHeights = new Array();
var ids = new Array();

// set values for heights and answers in arrays
function buildArrays()
{
	if (!document.getElementById) return false;
	if (!document.getElementById("linklist")) return false;
	if (!document.getElementsByTagName) return false;
	
	var linklist = document.getElementById("linklist");
	var uls = linklist.getElementsByTagName("ul");
	var headers = linklist.getElementsByTagName("h4");
	
	for (var i=0; i<uls.length; i++) 
	{
		uls[i].style.display = "block";
		uls[i].style.overflow = "hidden";
		uls[i].className = "inactive";
		ids[ids.length] = uls[i].getAttribute("id");
		elemHeights[elemHeights.length] = uls[i].offsetHeight;
		changeHeight(uls[i].getAttribute("id"), 0, intervalSpeed);
	}
	for (var i=0; i<headers.length; i++) 
	{ headers[i].className = "inactive"; }
}

function toggleLinks()
{
	if (!document.getElementById) return false;
	if (!document.getElementById("linklist")) return false;
	if (!document.getElementsByTagName) return false;
	
	var linklist = document.getElementById("linklist");
	var headers = linklist.getElementsByTagName("h4");
	
	for (var i=0; i<headers.length; i++) 
	{
		headers[i].onclick = function()
		{
			var link = this.firstChild;
			var id = link.getAttribute("href").split("#")[1];
			toggle(id, this);
			return false;
		}
	}
}

function toggle(id, header)
{	
	if(!document.getElementById) return false;
	var ul = document.getElementById(id);
	var ulString = ul.getAttribute("id");
	var index = ids.indexOf(id);
	var ulHeight = elemHeights[index];
	
	ul.oldClassName = ul.className
	
	if(ul.style.height == "0px")
	{
		buildArrays();
		ul.className = "active";
		header.className = "active";
		changeHeight(ulString, ulHeight, intervalSpeed);
	}
	else 
	{	
		buildArrays();
		ul.className = "inactive";
		header.className = "inactive";
		changeHeight(ulString, 0, intervalSpeed);
	}
}

function init()
{
	if (!document.getElementById) return false;
	if (!document.getElementById("linklist")) return false;
	if (!document.getElementsByTagName) return false;
	
	var linklist = document.getElementById("linklist");
	var uls = linklist.getElementsByTagName("ul");
	var firstHeader = linklist.getElementsByTagName("h4")[0];
	var firstUl = uls[0].getAttribute("id");
	uls[0].className = "active";
	firstHeader.className = "active";
	var ulHeight = elemHeights[0];
	changeHeight(firstUl, ulHeight, intervalSpeed);	
}

addLoadEvent(buildArrays);
addLoadEvent(init);
addLoadEvent(toggleLinks);