function isblank(s)  //detect entries with all white space
{
	for (var i = 0; i < s.length; i++) {
		var c = s.charAt(i);
		if ((c != ' ') && (c != '\n') && (c != '\t')) return false;
	}
	return true;
}

function strip(s)  //remove non-numeric characters
{
   	return s.replace(/\D/g, ""); 
}

function verify(f)
{
	var msg;
	var empty_fields = "";
	var errors = "";

for (var i = 0; i < f.length; i++) {
	var e = f.elements[i];
	if (((e.type == "text") || (e.type == "textarea")) && !e.optional) {
		if ((e.value == null) || (e.value == "") || isblank(e.value)) {	
		    empty_fields += "\n          " + e.name;
		    continue;
		}     

		if (e.numeric || (e.min != null) || (e.max != null)) {
			var v = parseFloat(e.value);
			if (isNaN(v) ||
				((e.min != null) && (v < e.min)) ||
				((e.max != null) && (v > e.max))) {
				errors += "- The field " + e.name + " must be a number";
				if (e.min != null)
					errors += " that is greater than " + e.min;
				if (e.max != null && e.min != null)
					errors += " and less than " + e.max;
				else if (e.max != null)
					errors += " that is less than " + e.max;
				errors += ".\n";
			}
		}
	}
}

if (!empty_fields && !errors) return true;
msg = "____________________________________________________________\n\n"
msg += "The form was not submitted because of the following error(s).\n";
msg += "Please correct these error(s) and re-submit.\n";
msg += "_____________________________________________________________\n\n"

if (empty_fields) {
	msg += "- The following required fields(s) are empty:"
                 + empty_fields + "\n";
	if (errors) msg += "\n";
	}
	msg += errors;
	alert(msg);
	return false;
}  
