// event handler
// addEventToObject(object, 'event', functionName);
// addEventToObject(object, 'event', function() {functionName('variable')});
function addEventToObject(obj, evt, func) 
{
	var oldhandler = obj[evt];
	if (typeof obj[evt] != 'function') {
		obj[evt] = func;
	} else {
		obj[evt] = function() {
			oldhandler();
			func();
		}
	}
}

function showIt(n) {
	n = n.id.substring(1,2);
	for (j=1;j<listLength+1;j++) {
		if (j == n) {
			t[j].className = "hi";
			d[j].className = "hi";
		} else {
			t[j].className = "";
			d[j].className = "";
		}
	}
}

// init vars
var t = new Array();
var d = new Array();
var listLength;
var currentId = 1;

function init()
{
	listLength = document.getElementById('features').getElementsByTagName('dt').length;
	for (i=1;i<listLength+1;i++) {
		t[i] = document.getElementById('t' + i);
		d[i] = document.getElementById('d' + i);
		addEventToObject(t[i],"onmouseover", function() {showIt(this)});
	}
}

// prep all the links which require popups
function prepPopupLinks()
	{
	if (!document. getElementsByTagName) return false;
	var ahrefs = document.getElementsByTagName('a');
	for (var i=0;i<ahrefs.length;i++)
		{
		var popupTxt = /popup/.test(ahrefs[i].getAttribute('target'))
		if (popupTxt == true) {addEventToObject(ahrefs[i], 'onclick', doPopupLinks);}
		}
	return true;
	}
// create and show popup
function doPopupLinks(ev)
	{
	if (!ev) ev = window.event;
	var clickedLink = (window.event) ? window.event.srcElement : ev.target;
	if (clickedLink.nodeType == 3 || clickedLink.nodeType == 1) {clickedLink = clickedLink.parentNode;}
	var workingStr = clickedLink.getAttribute('target');
	var popPos = workingStr.indexOf('popup-');
	if (popPos == -1) {return true;}
	workingStr = workingStr.substring(popPos+6, workingStr.length);
	var spacePos = workingStr.indexOf(' ');
	if (spacePos >= 0) {var endPos = (workingStr.length > spacePos) ? spacePos : workingStr.length;}
	else {endPos = workingStr.length;}
	workingStr = workingStr.substring(0, endPos);
	var wPos = workingStr.indexOf('w');
	if (wPos == -1) {return true;}
	var wStr = workingStr.substring(wPos, workingStr.length);
	var dashPos = ((wStr.indexOf('-') < workingStr.length) & (wStr.indexOf('-') != -1)) ? wStr.indexOf('-') : workingStr.length;
	var widthVal = wStr.substring(1, dashPos);
	var hPos = workingStr.indexOf('h');
	if (hPos == -1) {return true;}
	var hStr = workingStr.substring(hPos, workingStr.length);
	dashPos = ((hStr.indexOf('-') < workingStr.length) & (hStr.indexOf('-') != -1)) ? hStr.indexOf('-') : workingStr.length;
	var heightVal = hStr.substring(1, dashPos);
	var locationVal = (workingStr.indexOf('l') != -1) ? 1 : 0;
	var menubarVal = (workingStr.indexOf('m') != -1) ? 1 : 0;
	var toolbarVal = (workingStr.indexOf('t') != -1) ? 1 : 0;
	var statusVal = (workingStr.indexOf('s') != -1) ? 1 : 0;
	var winPoperties = 'width='+widthVal+',height='+heightVal+',location='+locationVal+',menubar='+menubarVal+',toolbar='+toolbarVal+',scrollbars=1,status='+statusVal+',resizable=1';
	var theWindow = window.open(clickedLink.href,'_blank',winPoperties);
	theWindow.focus();
	(ev.stopPropagation) ? ev.stopPropagation() : ev.cancelBubble = true;
	(ev.preventDefault) ? ev.preventDefault() : ev.returnValue = false;
	return false;
	}
// run the popups prep code on page load
addEventToObject(window, 'onload', prepPopupLinks);
addEventToObject(window, 'onload', init);

