function checkAllValidChars(objValue,valid_chars) {
var tmp_flag = false;
  // if check each char in objValue to see if it is in the valid_chars string
  for (var i = 0; i<= objValue.length; i++) {
   if ((valid_chars.indexOf(objValue.charAt(i))) == -1) {  // did not find char in valid string
     return false;
   }
 }
  return true;
}

function emptyField(textStr) {
 if(textStr.length == 0) return true;
  for (var i=0; i<textStr.length; ++i) {
    var ch = textStr.charAt(i);
    if(ch != ' ' && ch != '        ') return false;
  }
  return true;
}
function checkStandardText(objLabel,objValue) {
 if (emptyField(objValue))
   return ("\n" + objLabel + " cannot be blank \n");
 else
   return ("");
}

function checkFirstName(objValue,objLabel) {
var valid_chars = "abcdefghijklmnopqrstuvwxyz";
valid_chars += valid_chars.toUpperCase();
valid_chars += ". -'"
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + "  cannot be blank and must contain letters, periods, dashes, and apostrophes only. \n");
}  // end checkFirstName function

function checkLastName(objValue,objLabel) {
var valid_chars = "abcdefghijklmnopqrstuvwxyz";
valid_chars += valid_chars.toUpperCase();
valid_chars += ". -'"
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + "  cannot be blank and must contain letters, periods, dashes, and apostrophes only. \n");
}  // end checkLastName function

function checkStreet(objValue,objLabel) {
                if (!emptyField(objValue))
                        return ("");
                else
                          return ("Please enter your address. \n");
}  // end checkStreet

function checkEmailAddr(objValue,ObjLabel) {
  if (emptyField(objValue))  {
     return (ObjLabel + " cannot be blank \n");
  } else {
     // check to see if valid entry -(modified code from Travelocity.com)
     var indexofAtsign  = objValue.indexOf('@');   // -1 returned fi not found
     var indexofPeriod  = objValue.indexOf('.',indexofAtsign);
     var indexofSpace  = objValue.indexOf(' ');
     if (indexofSpace >= 0 || indexofAtsign <= 0 || indexofPeriod == -1 || indexofPeriod <= indexofAtsign + 1) {
       if (indexofSpace >= 0) {
         return ("The format of " + ObjLabel + " is not valid.  Please check for spaces. \n");
       } else {
         return ("Format of " + ObjLabel + " is not valid. \n");
       }
     } else {
     return ("");
     }
  }
}

function checkCity(objValue,objLabel) {
var valid_chars = "abcdefghijklmnopqrstuvwxyz";
valid_chars += valid_chars.toUpperCase();
valid_chars += ". -'"
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + " cannot be blank and must contain letters only. \n");
}  // end checkCity

function checkState(objValue,objLabel) {
var valid_chars = "abcdefghijklmnopqrstuvwxyz";
valid_chars += valid_chars.toUpperCase();
valid_chars += ". -'"
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + " cannot be blank and must contain letters only. \n");
}  // end checkState


function checkZipCode(objValue,objLabel) {
valid_chars = "0123456789";
valid_chars += "-";
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + " cannot be blank and must contain numbers only. \n");
}  // end checkZipCode function

function checkPhone(objValue,objLabel) {
valid_chars = "0123456789";
valid_chars += "-";
valid_chars += ")";
valid_chars += "(";
valid_chars += " ";
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + " cannot be blank. Please use the format as in the example. \n");
}  // end checkPhone function

function checkMajor(objValue,objLabel) {
var valid_chars = "abcdefghijklmnopqrstuvwxyz";
valid_chars += valid_chars.toUpperCase();
valid_chars += ". -'"
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)))
  return ("");
else
  return (objLabel + "  cannot be blank and must contain letters only. \n");
}  // end checkMajor function


function checkParty(objValue,objLabel) {
valid_chars = "0123456789";
if (checkAllValidChars(objValue,valid_chars) && !(emptyField(objValue)) && (objValue <= 25) && (objValue >=0))
  return ("");
else
  return (objLabel + " cannot be blank and must contain numbers only. The number should be less than or equal to 25\n");
}  // end checkZipCode function

function checkAretheSame(ValueOne,ValueTwo,caseSensitive) {
  if(caseSensitive)
  return (ValueOne == ValueTwo);
  else
  return (ValueOne.toUpperCase() == ValueTwo.toUpperCase());
}

function checkPairs(valueOne,valueTwo,caseSens,pair_label) {
 if (checkAretheSame(valueOne,valueTwo,caseSens))
 return ("");
 else
 return (pair_label + " must be the same ");
}

function AlmuniFormData(formObj) {
// first validate required fields
var alert_text = "You have entered incomplete or invalid information.\n "
var start_text = alert_text;
var alert_text1 = checkFirstName(formObj.n.value,"First Name")
var alert_text2 = checkLastName(formObj.ln.value,"Last Name")
var alert_text3 = checkStreet(formObj.add.value,"Address")
var alert_text4 = checkCity(formObj.city.value,"City")
var alert_text5 = checkState(formObj.state.value,"State")
var alert_text6 = checkZipCode(formObj.zip.value,"Zip Code")
var alert_text7 = checkEmailAddr(formObj.email.value,"Email Address")
var alert_text8 = checkEmailAddr(formObj.cemail.value,"Email Address Confirmation")
var alert_text9 = checkPairs(formObj.email.value,formObj.cemail.value,true,"Email Addresses")

var alert_text10 = checkPhone(formObj.phone.value,"Telephone")
var alert_text11 = checkMajor(formObj.im.value,"Intended Major")
var alert_text12 = checkParty(formObj.np.value,"Number of Parents")
var alert_text13 = checkParty(formObj.nst.value,"Number of Students")

if (alert_text1 == ""){
        if (alert_text2 == ""){
                if (alert_text3 == ""){
                        if (alert_text4 == ""){
                                if (alert_text5 == ""){
                                        if (alert_text6 == ""){
                                                if (alert_text7 == ""){
                                                        if (alert_text8 == ""){
                                                                if (alert_text9 == ""){
                                                                   if (alert_text10 == ""){
                                                                      if (alert_text11 == ""){
                                                                        if (alert_text12 == ""){
                                                                           if (alert_text13 == ""){
                                                                              alert_text += "";
                                                                           }else{
                                                                             alert_text += alert_text13;
                                                                           }
                                                                         }else{
                                                                           alert_text += alert_text12;
                                                                         }
                                                                       }else{
                                                                          alert_text += alert_text11;
                                                                       }
                                                                   }else{
                                                                        alert_text += alert_text10;
                                                                   }
                                                                }else{
                                                                        alert_text += alert_text9;
                                                                }
                                                        }else{
                                                                alert_text += alert_text8;
                                                        }
                                                }else{
                                                        alert_text += alert_text7;
                                                }
                                        }else{
                                                alert_text += alert_text6;
                                        }
                                }else{
                                        alert_text += alert_text5;
                                }
                        }else{
                                alert_text += alert_text4;
                        }
                }else{
                        alert_text += alert_text3;
                }
        }else{
                alert_text += alert_text2;
        }
}else{
        alert_text += alert_text1;
}

if (alert_text != start_text) {
alert(alert_text)
return false;
} else {
  return true;
}
}
