	function validateEmail(id, name, error) {
		var tmp = document.getElementById(id);
		var ret = "";
		var pat = /^[^@]+@[^\.^@]+(\.[^\.^@]+)+$/;
		if (tmp != null && tmp != undefined) {
			ret = (trim(tmp.value) == "" || pat.test(trim(tmp.value))) ? "" : "The " + name + " field is not a valid email address";
		}
		if (error != "" && ret != "") { error = error + "\n"; }
		return error + ret;
	}
	function validateSame(id1, id2, msg, error) {
		var ret = "";
		var tmp1 = document.getElementById(id1);
		var tmp2 = document.getElementById(id2);
		if (tmp1 != null && tmp1 != undefined && tmp2 != null && tmp2 != undefined) {
			ret = (trim(tmp1.value).toUpperCase() == trim(tmp2.value).toUpperCase()) ? "" : msg;
		}
		if (error != "" && ret != "") { error = error + "\n"; }
		return error + ret;
	}

	function validateNotBlank(id, name, error) {
		var tmp = document.getElementById(id);
		var ret = "";
		if (tmp != null && tmp != undefined) {
			ret = (trim(tmp.value) == "") ? "The " + name + " field is blank" : "";
		}
		if (error != "" && ret != "") { error = error + "\n"; }
		return error + ret;
	}

	function validateInteger(id, name, error) {
		var tmp = document.getElementById(id);
		var ret = "";
		var pat = /^[\d]+$/;
		if (tmp != null && tmp != undefined) {
			ret = (pat.test(trim(tmp.value))) ? "" : "The " + name + " field must be a whole number";
		}
		if (error != "" && ret != "") { error = error + "\n"; }
		return error + ret;
	}

	function trim(x) {
		x = x.replace(/^\s+/, "");
		x = x.replace(/\s+$/, "");
		return x;
	}
