/*
Author: Andy Hill
Created: 10/2005
Collection of functions used to validate form fields. The function associated with the form is 
like:
<script ...>
function submitIt(theForm) {
	if (!hasValue(theForm.fieldname, "Please supply a value for this field")) return false;
	...
	return true;
}
</script>

<form action="action.cfm" method="post" onsubmit="return submitIt(this)">
...
</form>

*/


//Simply indicates if a text field is not blank
function hasValue(field, message) {
	if (field.value != "") return true;
	else {
		alert(message);
		field.focus();
		return false;
	}
}

//Accepts one or 2 digit month, 1 or 2 digit day and 2 or 4 digit year separated by 
//slashes ('/') or hyphens('/')
function validDate(field, message) {
	var re = /\d\d?(\/|-)\d\d?(\/|-)(\d{2,4})/;
	if (re.test(field.value)) {
		field.value = field.value.replace(/-/g, "\/");
		return true;
	}
	else {
		alert(message);
		field.focus();
		return false;
	}
}
//Verify an item has been selected in a dropdown
function checkSelect(field, message) {
    var choice = field.selectedIndex;
    if (field.options[choice].value == "") {
        alert(message);
		return false;
    }
	return true;
}

function validEmail(field, message) {
	var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;
	return validateRe(field, message, re);
}

function validateRe(field, message, re) {
	if (re.test(field.value)) return true;
	else {
		alert(message);
		field.focus();
		return false;
	}
}
/*Returns the value of a radio button*/
function getRadioValue(field) {
	for (var i = 0; i < field.length; i++) {
		if (field[i].checked) return field[i].value;	
	}
}

function isNumeric(field, elem) {
}
