// The following code allows boxes to be expanded and contracted
var eboxes = [];

function init() {
	var e=0, c=0, i;
	// I'm tired of IE being broken - you use IE, you lose!
	if (navigator.appName.substr(0,5) != "Micro") {
		var divs = document.getElementsByTagName("div");
		for (i=0; i<divs.length; i++) {
			if (divs[i].className == "expandbox") {
				// Copy just div elements that are expanding boxes
				eboxes.push(divs[i]);
				// Collapse the boxes while we are at it
				divs[i].style.display = "none";
			}
		}
	}
	// Set up expand and collapse links
	var spanners = document.getElementsByTagName("span");
	for (i=0; i<spanners.length; i++) {
		if (spanners[i].className == "expander") {
			if (navigator.appName.substr(0,5) != "Micro") {
				spanners[i].addEventListener("click",expand,false);
			} else {
				spanners[i].style.display = "none";
			}
			spanners[i].id = "e"+e;
			e ++;
		} else if (spanners[i].className == "collapser") {
			if (navigator.appName.substr(0,5) != "Micro") {
				spanners[i].addEventListener("click",collapse,false);
			} else {
				spanners[i].style.display = "none";
			}
			spanners[i].id = "c"+c;
			c ++;
		}
	}
}

function expand() {
	var n = parseInt(this.id.slice(1));
	eboxes[n].style.display = "inline";
	document.getElementById("e"+n).style.display = "none";
	document.getElementById("c"+n).style.display = "inline";
}

function collapse() {
	var n = parseInt(this.id.slice(1));
	eboxes[n].style.display = "none";
	document.getElementById("c"+n).style.display = "none";
	document.getElementById("e"+n).style.display = "inline";
}