function textCounter(field, countfield, maxlimit) {
if (field.value.length > maxlimit) // if too long...trim it!
field.value = field.value.substring(0, maxlimit);
// otherwise, update 'characters left' counter
else 
countfield.value = maxlimit - field.value.length;
}

function formCheck(form) {
AlertString = "The following field(s) are required:\n\n"
AlertOccurred = 0
	
	NameString = Trim(form.name.value)
	if (NameString == '') {
	AlertString = AlertString + "Name\n";
	AlertOccurred = 1; }
	
	EmailString = Trim(form.email.value)
	if (EmailString == '') {
	AlertString = AlertString + "Email Address\n";
	AlertOccurred = 1; }
	else {
	ValidEmail = checkMail(EmailString);
		if (ValidEmail == "bad") {
		AlertString = AlertString + "Valid Email Address\n";
		AlertOccurred = 1; } }
	
	CommentsString = Trim(form.comments.value)
	if (CommentsString == '') {
	AlertString = AlertString + "Comments\n";
	AlertOccurred = 1; }
	
	if(AlertOccurred == 1) {
	alert(AlertString);
	return false; }

}

function Trim(str) {
  while (str.charAt(str.length - 1)==" ")
    str = str.substring(0, str.length - 1);
  while (str.charAt(0)==" ")
    str = str.substring(1, str.length);
  return str;
}

function checkMail(addy)
{
	var x = addy
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(x)) return "good";
	else return "bad";
}
