function ValidateField(fld, type, message) {

	if (type != "date" && type != "datetime" && type != "time" && type != "select" && type != "checks")
		var fieldvalue = fld.value.replace(/ $/);

	switch(type) {
		case "text": case "varchar": case "memo": case "halign": case "color": case "html":
			if (fieldvalue == "") {	
				fld.focus();
				alert(message);
				return false;
			}
			break;		
		case "date" :
			if (fld.value == "" || fld.value.replace(/[0-9]{1,2}\/[0-9]{1,2}\/[0-9]{4}/, "") != "") {
				fld.focus();
				alert(message + "\n- must be in the format dd/mm/yyyy).");
				return false;
			}
			break;
			
		case "email" :
			if (fieldvalue == "" || fieldvalue.length < 6 || fieldvalue.indexOf("@") < 1 || fieldvalue.indexOf("@") > (fieldvalue.length - 5) || fieldvalue.indexOf("@") != fieldvalue.lastIndexOf("@") || fieldvalue.lastIndexOf(".") > (fieldvalue.length - 3)) {
				fld.focus();
				alert(message + "\n- valid email addresses are formatted (eg): yourname@domain.com");
				return false;
			}
			break;
			
		case "currency" :
			if (fld.value == "" || fld.value.replace(/[0-9]*[.]?[0-9]?[0-9]?/, "") != "") {
				fld.focus();
				alert(message + "\n- must be a valid currency entry (no $ sign, max 2 decimal places).");
				return false;
			}
			break;
			
		case "int" :
			if (fld.value == "" || fld.value.replace(/[0-9]+/, "") != "") {
				fld.focus();
				alert(message + "\n- must be a valid integer (non-decimal number).");
				return false;
			}
			break;
			
		case "dec" :
			if (fld.value == "" || fld.value.replace(/[0-9]*[.]?[0-9]*/, "") != "") {
				fld.focus();
				alert(message + "\n- must be a valid decimal number.");
				return false;
			}
			break;
			
		case "select":
			if (fld.options[fld.selectedIndex].value == "" || fld.options[fld.selectedIndex].value == "0") {
				fld.focus();
				alert(message);
				return false;
			}
			break;		
		case "checks":
			checkcheck = false;
			
			if (fld.length == undefined) {
				if (fld.checked)
					checkcheck = true;
			}				
			else {
				for (var i=0; i < fld.length; i++) {
					if (fld[i].checked) {
						checkcheck = true;
						break;
					}
				}
			}
			if (!checkcheck) {
				alert(message + "\n- select at least one item from the list by clicking the box so that a check appears in it.");
				return false;
			}
			break;
	}	
	return true;
}
