<!--
/**=================================================
NAME: FORM CHECKING JAVASCRIPT FUNCTIONS
AUTHOR: Michael Pope (michael@rtpcomputer.com)
REVISED: 28May2003
=================================================**/	

gettoday :
var today = new Date();
var oggi = (today.getMonth()+1) + "/" + today.getDate() + "/" + today.getYear();

function checkFieldLF() 
	{
	arrFields = new Array("date", "name", "phone", "email", "comment");
	arrMsgs = new Array("Please enter today's date", "Please enter your name", "Please enter your phone number", "Please enter your full email address", "Please enter your comments");
	var j = 0;

	checkForm :
	with (document.ContactForm) 
		{
		for (var i=0; i < arrFields.length; i++) 
			{
			var thisValue = eval (arrFields[i] + ".value");
			var datev = date.value
			var namev = name.value
			var phonev = phone.value
			var emailv = email.value
			var commentv = comment.value
			var thisField = arrFields[i];
			var ErrMsg = arrMsgs[i];

			checknull :
			if (thisValue == "") 
				{ 
				switch (thisField)
					{
					case "date": date.focus(); break;
					case "name": name.focus(); break;
					case "phone": phone.focus(); break;
					case "email": email.focus(); break;
					case "comment" : comment.focus(); break;
					default: date.focus(); break;
					}
				alert(ErrMsg);						
				return false;
				break;

				j++;
				}

			checkdate :
			if (i == 0)
				{
				if (/[a-zA-Z]/.test(datev)) //alphabetic letters within date
					{
					date.focus();
					date.select();
					alert("The date you entered is not valid. Alphabetic characters are not valid within a date. Please re-enter the date");
					return false;
					break;

					j++;
					}

				else if (datev.length < 4) //invalid date - shortest valid would be mdyy (4)
					{
					date.focus();
					date.select();
					alert("The date you entered is not valid. Dates must conform to MM/DD/YYYY format. Please re-enter the date");
					return false;
					break;

					j++;
					}

				else if (datev.indexOf(" ") == -1 && datev.indexOf("/") == -1 && datev.indexOf("-") == -1 && datev.indexOf(".") == -1) //no punctuation
					{
					date.focus();
					date.select();
					alert("The date you entered is not valid. The month, day and year should each be separated by either a \"\/\" (slash), a \".\" (period), or a \"-\" (dash). Please re-enter the date with the proper punctuation");
					return false;
					break;

					j++;
					}

				else if (/^(\d{1,2})(\/|-|\.)(\d{1,2})(\2)(\d{2})$/.test(datev)) //2-digit year
					{
					var datel = datev.length;
					var endOfStart = datel-2;
					var begOfEnd = datel-2;
					dateBeg = datev.substr(0, endOfStart);
					dateEnd = datev.substr(begOfEnd);
					newdv = dateBeg+"20"+dateEnd;
					date.value = newdv;
					datev = date.value;
					}

				else if (!/^(\d{1,2})(\/|-|\.)(\d{1,2})\2(\d{4})$/.test(datev)) // all else
					{
					date.focus();
					date.select();
					alert("The date you entered is not valid. Dates must conform to MM/DD/YYYY format. Please re-enter the date");
					return false;
					break;
					
					j++;
					}
				}				

			checkphone :
			if (i == 2) 
				{
				if ((phonev == "(xxx) xxx-xxxx") || (phonev == ""))
					{
					phone.focus();
					phone.select();
					alert("Please enter your phone number");
					return false;
					break;
					
					j++;
					}
				else if (/[a-zA-Z]/.test(phonev)) //alphabetic letters within phone number
					{
					phone.focus();
					phone.select();
					alert("The phone number you entered is not valid. Alphabetic characters are not valid within a phone number. Please re-enter the phone number");
					return false;
					break;

					j++;
					}

				else if (phonev.length < 7) //invalid phone - shortest valid would be internal (xxxxxxx) (5)
					{
					phone.focus();
					phone.select();
					alert("The phone number you entered was not long enough to be valid.");
					return false;
					break;

					j++;
					}

				}

			checkemail :
			if (i == 3) 
				{
				if (emailv.indexOf(" ") != -1 || emailv.indexOf("/") != -1 || emailv.indexOf("\\\\") != -1 || emailv.indexOf(",") != -1)
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. Spaces, slashes and commas are not valid within an email address. Please re-enter your full email address");
					return false
					break
					
					j++;
					}

				else if (/[@.][@.]/.test(emailv))
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. An email address cannot contain adjoining periods and/or @ symbols. Please re-enter your full email address");
					return false
					break
					
					j++;
					}

				else if (/^[@.]/.test(emailv))
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. An email address cannot begin with a period or an @ symbol. Please re-enter your full email address");
					return false
					break
					
					j++;
					}

				else if(/[@.]$/.test(emailv))
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. An email address cannot end with a period or an @ symbol. Please re-enter your full email address");
					return false
					break
					
					j++;
					}

				else if(!/^[^@]+@[^@]+$/.test(emailv))
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. An email address must contain one @ symbol and only one @ symbol. Please re-enter your full email address");
					return false
					break
					
					j++;
					}

				else if(!/@.*[.]/.test(emailv))
					{
					email.focus();
					email.select();
					alert("The email address you entered is not valid. An email address must contain at least one period following the @ symbol. Please re-enter your full email address");
					return false
					break
					
					j++;
					}
				}
			}
		}
	}

// -->