// Each DT needs a DD or else this will display oddly

function init() {
   // quit if this function has already been called
   if (arguments.callee.done) return;

   // flag this function so we don't do the same thing twice
   arguments.callee.done = true;

	var listDts = document.getElementById("connections").getElementsByTagName('dt');
	var listDds = document.getElementById("connections").getElementsByTagName('dd');
	var originalDd;

	show_dd(0);

	for (var i = 0; i < listDts.length; i++) {
		
		listDts[i].onmouseover = function() {
			for (var v = 1; v < listDts.length; v++) {
				if (listDts[v] == this) {
					hide_dd(0);
					show_dd(v);
				} 
			}
		}
		
		listDts[i].onmouseout = function() {
			for (var v = 0; v < listDts.length; v++) {
				if (listDts[v] == this) {
					hide_dd(v);
					show_dd(0);
				} 
			}
		}
	}
	
	function show_dd (index) {
		originalDd = listDds[index].innerHTML;
		var dtLink = listDts[index].getElementsByTagName('a');
		listDds[index].innerHTML = '<strong>' + dtLink[0].innerHTML + '</strong><br />' + listDds[index].innerHTML;
		listDds[index].className = 'visible';
	}
	
	function hide_dd (index) {
		listDds[index].className = 'invisible';
		listDds[index].innerHTML = originalDd;
	}
}

/* for Mozilla */
if (document.addEventListener) {
   document.addEventListener("DOMContentLoaded", init, false);
}

// for Internet Explorer (using conditional comments)
/*@cc_on @*/
/*@if (@_win32)
document.write("<script id=__ie_onload defer src=javascript:void(0)><\/script>");
var script = document.getElementById("__ie_onload");
script.onreadystatechange = function() {
	if (this.readyState == "complete") {
		init(); // call the onload handler
	}
};
/*@end @*/


/* for other browsers */
window.onload = init;