function toggleLayer(whichLayer) {
	if(document.getElementById) {
		// this is the way the standards work
		var style2 = document.getElementById(whichLayer).style;
		style2.display = (style2.display != "block") ? "block" : "none";
	} else if(document.all) {
		// this is the way old msie versions work
		var style2 = document.all[whichLayer].style;
		style2.display = (style2.display != "block") ? "block" : "none";
	} else if(document.layers) {
		// this is the way nn4 works
		var style2 = document.layers[whichLayer].style;
		style2.display = (style2.display != "block") ? "block" : "none";
	}
}

// Helper function: Gets the target on an event for all browsers
function getTarget(event) {
	var event = event || window.event; // IE doesnt pass event as argument.
	var tgt = event.target || event.srcElement; // IE doesnt use .target
	if(tgt.nodeType == 3) tgt = tgt.parentNode; // defeat Safari bug
	return tgt;
}

function getMouseX(event) {
	var root = document.documentElement || document.body;
	return !event ? window.event.clientX + root.scrollLeft : event.pageX;
}

function getMouseY(event) {
	var root = document.documentElement || document.body;
	return !event ? window.event.clientY + root.scrollTop : event.pageY;
}

var initialContent = null;

function replaceContentWithMyText(event) {
	var tgt = getTarget(event);
	
	var listLinks = document.getElementsByName("rolloverchangecontent");
	for(i = 0; i < listLinks.length; i++) {
		listLinks[i].parentNode.parentNode.className = null;
	}
	tgt.parentNode.parentNode.className = "current";
	tgt = tgt.parentNode.nextSibling;
	while(tgt != null && tgt.nodeType == 3) tgt = tgt.nextSibling;
	var replace = document.getElementById("replacecontent");
	replace.innerHTML = tgt.innerHTML;
}

function revertToInitialContent(event) {
	var replace = document.getElementById("replacecontent");
	if(replace != null) {
		var mouseX = getMouseX(event);
		var mouseY = getMouseY(event);
		if(!(replace.offsetLeft <= mouseX && mouseX <= (replace.offsetLeft + replace.offsetWidth) &&
			 replace.offsetTop - 20  <= mouseY && mouseY <= (replace.offsetTop + replace.offsetHeight))) {
			replace.innerHTML = initialContent;
			var listLinks = document.getElementsByName("rolloverchangecontent");
			for(i = 0; i < listLinks.length; i++) {
				listLinks[i].parentNode.parentNode.className = null;
			}
		}
	}
}

exponentJSregister(
	function() {
		var replace = document.getElementById("replacecontent");
		if(replace != null) initialContent = replace.innerHTML;
		
		var listLinks = document.getElementsByName("rolloverchangecontent");
		
		var revert = false;
		if(listLinks.length > 0) {
			revert = listLinks[0].parentNode.parentNode.parentNode.className.indexOf('revertToInitialContent') >= 0;
		}
		var isIE6 = /msie|MSIE 6/.test(navigator.userAgent);
		for(i = 0; i < listLinks.length; i++) {
			if(isIE6) {
				listLinks[i].onmouseover = replaceContentWithMyText;
			} else {
				listLinks[i].onclick = replaceContentWithMyText;
			}
		}
		if(replace != null && revert) document.body.onclick = revertToInitialContent;
	}
);

function getInputFilterButton() {
	var inputs = document.getElementsByTagName("input");
	for(i = 0; i < inputs.length; i++) {
		if(inputs[i].value == "Filter") return inputs[i];
	}
	return null;
}
function hideFilterCriteria() {
	var node = getInputFilterButton();
	if(node != null) {
		var previousNode = node.previousSibling;
		var numButtons = 0;
		while(numButtons < 2 && previousNode != null) {
			if(previousNode.type == "radio") {
				numButtons++;
				previousNode.checked = true; // necessary for IE
			}
			var isText = previousNode.style == undefined;
			if(!isText) previousNode.style.display = 'none';
			var isBR = previousNode.nodeName.toLowerCase() == "br";
			previousNode = previousNode.previousSibling;
			if(isBR || isText) previousNode.parentNode.removeChild(previousNode.nextSibling);
		}
	}
}
