var neededFields = new makeAnArray('firstName', 'lastName', 'comments', 'step');
var neededDesc = new makeAnArray('your first name', 'your last name', 'your comments or question','your step (error)');

function makeAnArray() {
        this.length = makeAnArray.arguments.length;
        for (var i = 0; this.length > i; i++) {
          	this[i+1] = makeAnArray.arguments[i]
          	}	
	}

function validInfo(obj) {
	var errMsg = '';

	// Check for the misc. required fields
for (var l = 1; neededFields.length > l; l ++) {
		if ((obj.elements[neededFields[l]].value == '') ||
			(obj.elements[neededFields[l]].value == ' ')) {
			errMsg = errMsg + 'You didn\'t enter ' + neededDesc[l] + '\n';
			}
	}

	var phone = obj.phone.value ;
	if (( phone == '') ||
			( phone == ' ')) { // no home phone number is okay 
			}
	else {	if (!(isPhoneNumber(phone))) {
		errMsg = errMsg + 'You entered an invalid phone number\n';
	}}
		
	var eMail = obj.eMail.value ;
	if (( eMail == '') ||
			( eMail == ' ')) {
			errMsg = errMsg + 'You didn\'t enter an e-mail address\n';
			}
		else {
	if (!(isMailAddress(eMail))) {
		errMsg = errMsg + 'You entered an invalid e-mail address\n';
	}}	
	
	var checkEnter = obj.checkEnter.value ;
		if ((checkEnter == '') || (checkEnter == ' ')) {
			errMsg = errMsg + 'You didn\'t enter the form validation number' + '\n';
			}
		else if (checkEnter != checkNum) {
			errMsg = errMsg + 'You didn\'t enter the correct form validation number' + '\n';
			}
	// check for URL code in the comment, anti-spam measure
	var message = obj.comments.value ;
	var temp = message.indexOf("href=");
	if ( temp != -1 ) {
		errMsg = errMsg + '\n' + "Sorry, no active links allowed in message" ;
		}
	
	if (errMsg != '') {
		errMsg = '[ Contact Validation ]\nUnable to process the contact form because:\n\n' + errMsg;
		alert(errMsg);
		return false;
	} else {
		return true;
	}
}

function isPhoneNumber(n) {
   var nl = n.length;
   var goodNum = true;
   if (7 > nl) { goodNum = false; }
   for (c = 0; n.length > c; c++) {
      t = n.charAt(c);
      if (((t >= '0') && ('9' >= t) || (t == '.') || (t == ' ') || (t == '+') || (t == '-')|| (t == ')')|| (t == '(')) != true) {
	goodNum = false;
      }
   }
   if ((n == '') || (n == ' ')) { goodNum = false; }
	
   return goodNum;
}

function isMailAddress(m) {
   if ((m == '') || (m == ' ')) { return false; }
   
    var a = 1;
    var ml = m.length;

    while ((a < ml) && (m.charAt(a) != "@")) { a++ }
    if ((a >= ml) || (m.charAt(a) != "@")) {
	return false;
    } else {
	a = a + 2;
    }
    while ((ml > a) && (m.charAt(a) != ".")) { a++ }
    if ((a >= ml - 1) || (m.charAt(a) != ".")) {
	return false;
    } else {
    return true;
    }
}

//-->

