var browserName=navigator.appName;
var browserVer=parseInt(navigator.appVersion);

if ( (browserName == "Netscape") && (browserVer == 4) ) {
  version="n4";
}

else if ( browserName == "Netscape" && browserVer >= 5) {
  version="n5";
}
 
else if ((browserName=="Microsoft Internet Explorer" && browserVer>=4))
  version="ie4";


//if Browser is Netscape 4

if (version=="n4")
{
		layerStyleRef="layer.";
		layerRef="document.layers";
		styleSwitch="";
}


//if Browser is Netscape 6

if (version=="n5")
{
		layerStyleRef="layer.";
		layerRef="document.getElementById";
		styleSwitch=".style";
}


//if Browser is Internet Exporer 4+	

if (version=="ie4")
{
  layerStyleRef="layer.style.";

  layerRef="document.all";
  styleSwitch=".style";
}

function showLayer(layerName){

	if (version == "n5") {
	  eval(layerRef+'("'+layerName+'")'+styleSwitch+'.visibility="visible"');
	} else {
        eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="visible"');
	}
}
	
function hideLayer(layerName){

	//document.getElementById('layer1').style.visibility = 'hidden';
	if (version == "n5") {
	  eval(layerRef+'("'+layerName+'")'+styleSwitch+'.visibility="hidden"');
	} else {
        eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');
	}

	//eval(layerRef+'["'+layerName+'"]'+styleSwitch+'.visibility="hidden"');

}

function submitform() {
	document.searchform.submit()
}

function launch(url)
{
	if(top.browser=="explorer")
	{
		top.launchWin=window.open(url,'popup','toolbar=yes,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=no,width=498,height=500');
	}
	else
	{
		top.launchWin=window.open(url,'popup','toolbar=yes,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,copyhistory=no,width=498,height=400');top.launchWin.focus();
	}

}

if (version == "n5") {
	startBracket = "(";
	endBracket = ")";
}
else {
	startBracket = "[";
	endBracket = "]";
}

function toggleLayer(questionNum, totalQuestions) {
	notFound = true;
	for (i = 1; i < totalQuestions + 1; i++) {
		if (i != questionNum) {
			divString = layerRef + startBracket + '"answer' + i + '"' + endBracket + styleSwitch + '.display';
			if (eval(divString) == "block") {
				eval(divString + '="none"');
				notFound = false;
				break;
			}
		}
	}
	if (notFound) {
		divString = layerRef + startBracket + '"answer' + questionNum + '"' + endBracket + styleSwitch + '.display';
		if (eval(divString) == "block")
			eval(divString + '="none"');
		else
			eval(divString + '="block"');
	}

	return false;
}

function submitFeedback() {
	alert("Thank you for your feedback.  If you provided a valid email address, a response will be forthcoming.");
	document.feedback.submit();
}

// addEvent and removeEvent, designed by Aaron Moore
function addEvent(element, listener, handler)
{
	//if the system is not set up, set it up, and
	// store any outside script's event registration in the first handler slot
	if(typeof element[listener] != 'function' || 
	typeof element[listener + '_num'] == 'undefined'){
		element[listener + '_num'] = 0;
		if(typeof element[listener] == 'function'){
			element[listener + 0] = element[listener];
			element[listener + '_num']++;
		}
		element[listener] = function(e){
			var r = true;
			e = (e) ? e : window.event;
			for(var i = 0; i < element[listener + '_num']; i++)
				if(element[listener + i](e) === false) r = false;
			return r;
		}
	}
	//if handler is not already stored, assign it
	for(var i = 0; i < element[listener + '_num']; i++)
		if(element[listener + i] == handler) return;
	element[listener + element[listener + '_num']] = handler;
	element[listener + '_num']++;
}
function removeEvent(element, listener, handler)
{
	//if the system is not set up, or there are no handlers to remove, exit
	if(typeof element[listener] != 'function' || 
	typeof element[listener + '_num'] == 'undefined' ||
	element[listener + '_num'] == 0) return;
	//loop through handlers,
	//  if target handler is reached, begin overwriting each
	//  handler with the handler in front of it until one before the last
	var found = false;
	for(var i = 0; i < element[listener + '_num']; i++){
		if(!found)
			found = element[listener + i] == handler;
		if(found && (i+1) < element[listener + '_num'])
			element[listener + i] = element[listener + (i+1)];
	}
	//if handler was found, decrement the handler count
	if(found)
		element[listener + '_num']--;
}

var imgCache = new Object();
function initRollovers() {
	for(var i = 0; i < document.images.length; i++ ) {
		var img = document.images[i];
		if (img.getAttribute)
			img.hoversrc = img.getAttribute("hoversrc");
		if (img.hoversrc) {
			if (!imgCache[img.src]) {
				imgCache[img.src] = new Image();
				imgCache[img.src].src = img.src;
			}
			img.basesrc = img.src;
			img.onmouseout = function () { this.src = this.basesrc; };
			if (!imgCache[img.hoversrc]) {
				imgCache[img.hoversrc] = new Image();
				imgCache[img.hoversrc].src = img.hoversrc;
			}
			img.onmouseover = function () { this.src = this.hoversrc; };
		}
	}
}

addEvent(window, 'onload', initRollovers);
