function verifyForm(this_form) {
	var look_for = new String("");
	var current_set = new String("");
	var match_found = new Boolean(false);
	var radio_button_total = 0;
	var int_value = 0;
	
	for (var i = 0; i < this_form.elements.length; i++) {
		// Check text and textarea fields
		if ((this_form.elements[i].value == "") && (this_form.elements[i].name != "comments") && (this_form.elements[i].name != "street_address2")) {
			alert ("You have not entered a value for " + this_form.elements[i].title + ".");
			return false;
		}
		
		// Check radio buttons & calculate quantized survey total
		// ... this check for radio buttons assumes that the radio buttons appear in complete clumps, i.e. all buttons with the same name appear consecutively
		match_found = false;
		if (this_form.elements[i].type == "radio") {
			// loop through all buttons in current set
			current_set = this_form.elements[i].name;
			while ((i < this_form.elements.length) && (this_form.elements[i].name == current_set)) {
				if (this_form.elements[i].checked) {
					match_found = true;
					int_value = parseInt(this_form.elements[i].value);
					if (!isNaN(int_value)) {
						radio_button_total += int_value;
					}
				}
				i++;
			}
			i--;
			if (!match_found) {
				alert ("You have not entered a value for " + this_form.elements[i].title + ".");
				return false;
			}
			this_form.total.value = radio_button_total;
		}
	}
	return true;
}