function narrowDisplay() {
	var displays = document.getElementById("bd").getElementsByTagName("li");
	var query = document.forms.quicksearch.query.value.toLowerCase();
	for(var i = 0; i < displays.length; i++) {
		if(displays[i].id.toLowerCase().indexOf(query) == -1) {
			displays[i].style.display = "none";
			removeHilight(displays[i]);
		} else {
			displays[i].style.display = "block";
			addHilight(displays[i], query);
		}
	}
}

function addHilight(o, query) {
	var as = o.getElementsByTagName("a");
	for(var j = 0; j < as.length; j++) {
		if(as[j].className == "name") {
			if(query.length == 0) {
				if (navigator.appName != "Microsoft Internet Explorer") {
					as[j].innerHTML = as[j].textContent;
				} else {
					as[j].innerHTML = getTextContent(as[j]);
				}
			}
			if (navigator.appName != "Microsoft Internet Explorer") {
				var name = as[j].textContent;
			} else {
				var name = getTextContent(as[j]);
			}			
			var start = name.toLowerCase().indexOf(query);
			as[j].innerHTML = name.substr(0, start) + '<span class="hilight">' + name.substr(start, query.length) + '</span>' + name.substr(start+query.length);
		}
	}
}

function removeHilight(o) {
	var as = o.getElementsByTagName("a");
	for(var j = 0; j < as.length; j++) {
		if(as[j].className == "name") {
			if (navigator.appName != "Microsoft Internet Explorer") {
				as[j].innerHTML = as[j].textContent;
			} else {
				as[j].innerHTML = getTextContent(as[j]);
			}
		}
	}
}

function getTextContent(o) {
	var textArray = o.innerHTML.split("<");
	var text = "";
	for (var i = 0; i < textArray.length; i++) {
		var parts = textArray[i].split(">");
		if(parts.length == 1 && parts[0].length > 0) {
			text += parts[0];
		} else if(parts.length > 1) {
			text += parts[1];
		}
	}
	return text;
}

function filterDisplay() {
	var displays = document.getElementById("bd").getElementsByTagName("li");
	var filterform = document.forms.filters;
	var checkboxes = filterform.getElementsByTagName("input");
	var query1 = new Array();
	var query2 = new Array();
	var query3 = document.forms.quicksearch.query.value.toLowerCase();

	for(var i = 0; i < checkboxes.length; i++) {
		if(checkboxes[i].checked) {
			var filtertype = checkboxes[i].name.toLowerCase();
			if(filtertype == "cs" || filtertype == "cpeg") {
				query1[query1.length] = filtertype;
			} else {
				query2[query2.length] = checkboxes[i].value.toLowerCase();
			}
		}
	}
	
	var match;
	for(i = 0; i < displays.length; i++) {
		match = false;
		if(displays[i].id.toLowerCase().indexOf(query3) != -1) {
			addHilight(displays[i], query3);
			for(var j = 0; j < query1.length; j++) {
				if(displays[i].className.toLowerCase().indexOf(query1[j]) != -1) {
					for(var k = 0; k < query2.length; k++) {
						if(displays[i].className.toLowerCase().indexOf(query2[k]) != -1) {
							displays[i].style.display = "block";
							match = true;
						}
					}
				}
			}
		} else {
			removeHilight(displays[i]);
		}
		if(!match) {
			displays[i].style.display = "none";
		}
	}
}

window.onload = function() { 
	while(!document.getElementById("query"));
	document.getElementById("query").value = "";
	document.forms.quicksearch.quicksearch_submit.parentNode.removeChild(document.forms.quicksearch.quicksearch_submit);
	document.forms.quicksearch.setAttribute("onsubmit", "return blocksubmit()");
	if(document.forms.filters) {
		document.forms.filters.filters_submit.parentNode.removeChild(document.forms.filters.filters_submit);
		document.forms.filters.filters_reset.parentNode.removeChild(document.forms.filters.filters_reset);
		document.forms.filters.onsubmit = "return false";
		var checkboxes = document.forms.filters.getElementsByTagName("input");
		for(var i = 0; i < checkboxes.length; i++) {
			checkboxes[i].checked = true;
		}
	}
};

function blocksubmit() {
	return false;
}