function doGlobalCheck() {
    var first, last, address1, address2, city, zip;
    var email, countryindex;
    var phone11, phone12, phone21, phone22, phone31, phone32, phone41, phone42, phone51, phone52, phone61, phone62;
    var monthindex, yearindex, progvalue, progsvalue, contactme; 
    var online, edlevel, military, intl, citizenship;
    var err = "";
    var fullphone;

    var testtwochar = new RegExp(/[A-Z][A-Z]/i);
    var testtwoalpha = new RegExp(/\w\w/);
    var testnames = new RegExp(/^([a-z]+(\'|-|\.\s|\s)?[a-z]*){1,2}$/i);
    var testmail = new RegExp(/^(\S+\.?)+\S+\@([\w\-]{2,}\.)+[\w\-]{2,3}$/i);
    var testzip = new RegExp(/^(\d\d\d\s*\d\d|[a-zA-Z]\d[a-zA-Z]\s*\d[a-zA-Z]\d)$/);
    var testphonearea = new RegExp(/^\d\d\d$/);
    var testphonebody = new RegExp(/^\d\d\d[- ]?\d\d\d\d+$/);
    var testphonebodydelimited = new RegExp(/^\d\d\d[- ]\d\d\d\d+$/);
    var testsequence = new RegExp(/^\d{10,}$/);

    if(document.contactForm.field_required_firstname) {
      first=document.contactForm.field_required_firstname.value;
      if(!testnames.test(first)) {
        err = err + "Firstname: At least 2 alpha characters, no numbers\n";
      }
    }
    if(document.contactForm.field_required_lastname) {
      last=document.contactForm.field_required_lastname.value;
      if(!testnames.test(last)) {
        err = err + "Lastname: At least 2 alpha characters, no numbers\n";
      }
    }
    if(document.contactForm.field_required_address) {
      address1=document.contactForm.field_required_address.value;
      if(address1 && !testtwoalpha.test(address1)) {
        err = err + "Address 1: At least 2 characters\n";
      }
    }
    if(document.contactForm.field_address2 && document.contactForm.field_address2.value) {
      address2=document.contactForm.field_address2.value;
      if(address2 && !testtwoalpha.test(address2)) {
        err = err + "Address 2: At least 2 characters\n";
      }
    }
    if(document.contactForm.field_required_city) {
      city=document.contactForm.field_required_city.value;
      if(!testtwochar.test(city)) {
        err = err + "City: At least 2 alpha characters, no numbers\n";
      }
    }
    if(document.contactForm.field_required_zip) {
      zip=document.contactForm.field_required_zip.value;
      if(zip != null && !testzip.test(zip)) {
        err = err + "ZIP: Provide your 5 digit (or 6 digit if CA) zip code\n";
      }
    }

    if(document.contactForm.field_required_primary_phone_area || document.contactForm.field_required_primary_phone_body) {
      phone11=document.contactForm.field_required_primary_phone_area.value;
      if(!testphonearea.test(phone11)) {
        err = err + "Phone: Provide area code of your primary phone number.\n";
      }
      phone12=document.contactForm.field_required_primary_phone_body.value;
      if(!testphonebody.test(phone12)) {
        err = err + "Phone: Provide body of your primary phone number.\n";
      }
      if(testphonebodydelimited.test(phone12)) {
        var a = phone12.split(/[- ]/);
        fullphone = phone11 + a[0] + a[1];
      } else {
        fullphone = phone11 + phone12;
      }
      if(!testsequence.test(fullphone)) {
        err = err + "Phone: Primary phone number must be 10 or more digits.\n"
      }
    }
    if((document.contactForm.field_secondary_phone_area && document.contactForm.field_secondary_phone_area.value) ||
       (document.contactForm.field_secondary_phone_body && document.contactForm.field_secondary_phone_body.value)) {
      phone21=document.contactForm.field_secondary_phone_area.value;
      if(phone21 && !testphonearea.test(phone21)) {
        err = err + "Phone: Provide area code of your secondary phone number.\n";
      }
      phone22=document.contactForm.field_secondary_phone_body.value;
      if(phone22 && !testphonebody.test(phone22)) {
        err = err + "Phone: Provide body of your secondary phone number.\n";
      }
      if(testphonebodydelimited.test(phone22)) {
        var a = phone22.split(/[- ]/);
        fullphone = phone21 + a[0] + a[1];
      } else {
        fullphone = phone21 + phone22;
      }
      if(fullphone && !testsequence.test(fullphone)) {
        err = err + "Phone: Secondary phone number must be 10 or more digits.\n"
      }
    }
    if(document.contactForm.field_required_work_phone_area || document.contactForm.field_required_work_phone_body) {
      phone31=document.contactForm.field_required_work_phone_area.value;
      if(!testphonearea.test(phone31)) {
        err = err + "Phone: Provide area code of your work phone number.\n";
      }
      phone32=document.contactForm.field_required_work_phone_body.value;
      if(!testphonebody.test(phone32)) {
        err = err + "Phone: Provide body of your work phone number.\n";
      }
      if(testphonebodydelimited.test(phone32)) {
        var a = phone32.split(/[- ]/);
        fullphone = phone31 + a[0] + a[1];
      } else {
        fullphone = phone31 + phone32;
      }
      if(!testsequence.test(fullphone)) {
        err = err + "Phone: Work phone number must be 10 or more digits.\n"
      }
    }
    if(document.contactForm.field_required_cell_phone_area || document.contactForm.field_required_cell_phone_body) {
      phone41=document.contactForm.field_required_cell_phone_area.value;
      if(!testphonearea.test(phone41)) {
        err = err + "Phone: Provide area code of your cell phone number.\n";
      }
      phone42=document.contactForm.field_required_cell_phone_body.value;
      if(!testphonebody.test(phone42)) {
        err = err + "Phone: Provide body of your cell phone number.\n";
      }
      if(testphonebodydelimited.test(phone42)) {
        var a = phone42.split(/[- ]/);
        fullphone = phone41 + a[0] + a[1];
      } else {
        fullphone = phone41 + phone42;
      }
      if(!testsequence.test(fullphone)) {
        err = err + "Phone: Cell phone number must be 10 or more digits.\n"
      }
    }
    if((document.contactForm.field_work_phone_area && document.contactForm.field_work_phone_area.value) ||
       (document.contactForm.field_work_phone_body && document.contactForm.field_work_phone_body.value)) {
      phone51=document.contactForm.field_work_phone_area.value;
      if(phone51 && !testphonearea.test(phone51)) {
        err = err + "Phone: Provide area code of your work phone number.\n";
      }
      phone52=document.contactForm.field_work_phone_body.value;
      if(phone52 && !testphonebody.test(phone52)) {
        err = err + "Phone: Provide body of your work phone number.\n";
      }
      if(testphonebodydelimited.test(phone52)) {
        var a = phone52.split(/[- ]/);
        fullphone = phone51 + a[0] + a[1];
      } else {
        fullphone = phone51 + phone52;
      }
      if(fullphone && !testsequence.test(fullphone)) {
        err = err + "Phone: Work phone number must be 10 or more digits.\n"
      }
    }
    if((document.contactForm.field_cell_phone_area && document.contactForm.field_cell_phone_area.value) ||
       (document.contactForm.field_cell_phone_body && document.contactForm.field_cell_phone_body.value)) {
      phone61=document.contactForm.field_cell_phone_area.value;
      if(phone61 && !testphonearea.test(phone61)) {
        err = err + "Phone: Provide area code of your cell phone number.\n";
      }
      phone62=document.contactForm.field_cell_phone_body.value;
      if(phone62 && !testphonebody.test(phone62)) {
        err = err + "Phone: Provide body of your cell phone number.\n";
      }
      if(testphonebodydelimited.test(phone62)) {
        var a = phone62.split(/[- ]/);
        fullphone = phone61 + a[0] + a[1];
      } else {
        fullphone = phone61 + phone62;
      }
      if(fullphone && !testsequence.test(fullphone)) {
        err = err + "Phone: Cell phone number must be 10 or more digits.\n"
      }
    }

    if(document.contactForm.field_required_email) {
      email=document.contactForm.field_required_email.value;
      if(!testmail.test(email)) {
        err = err + "E-mail: Provide your contact email you would like additional information sent.\n";
      }
    }
    if(document.contactForm.field_required_country) {
      countryindex=document.contactForm.field_required_country.selectedIndex;
      if(countryindex < 1) {
        err = err + "Country: missing your selection\n";
      }
    }
    if(document.contactForm.field_required_gradmonth) {
      monthindex=document.contactForm.field_required_gradmonth.selectedIndex;
      if(monthindex != null && monthindex < 1) {
        err = err + "Graduation date: missing month\n";
      }
    }
    if(document.contactForm.field_required_gradyear) {
      yearindex=document.contactForm.field_required_gradyear.selectedIndex;
      if(yearindex != null && yearindex < 1) {
        err = err + "Graduation date: missing year\n";
      }
    }
    if(document.contactForm.field_required_program) {
      progvalue=document.contactForm.field_required_program.value;
      if(progvalue == null ) {
        err = err + "Program Of Interest: missing your choice\n";
      }
    }
    if(document.contactForm.field_required_programs) {
      progsvalue=document.contactForm.field_required_programs.value;
      if(progsvalue == null ) {
        err = err + "Program Of Interest: missing your choice\n";
      }
    }
    if(document.contactForm.field_required_education_level) {
      edlevel=document.contactForm.field_required_education_level.value;
      if(edlevel != null && edlevel == "") {
        err = err + "Education: select your education level\n";
      }
    }
    if(document.contactForm.field_required_ok_contact) {
      contactme=document.contactForm.field_required_ok_contact;
      if(contactme) {
        if(!(contactme.item(0).checked)) {
            var schoolname = document.title;
            schoolname = schoolname.split(/ -/)[0];
            err = err + "\nIn order to provide more detailed information about "+schoolname+" and the many degree programs that would best fit your career objectives, would you consider having a representative contact you to answer any additional questions you may have about "+schoolname+"\n";
        }
      }
    }
    if(document.contactForm.field_required_online) {
      online=document.contactForm.field_required_online;
      if(online) {
        if(!(online.item(0).checked || online.item(1).checked)) {
            err = err + "Online: missing your preference\n";
        }
      }
    }
    if(document.contactForm.field_required_military) {
      military=document.contactForm.field_required_military.value;
      if(military != null && military == "") {
        err = err + "Military: select your association with army\n";
      }
    }
    if(document.contactForm.field_required_credits_intl) {
      intl=document.contactForm.field_required_credits_intl;
      if(intl) {
        if(!(intl.item(0).checked || intl.item(1).checked)) {
            err = err + "International: missing info on your earned credits\n";
        }
      }
    }
    if(document.contactForm.field_required_citizenship) {
      citizenship=document.contactForm.field_required_citizenship;
      if(citizenship) {
        if(!(citizenship.item(0).checked || citizenship.item(1).checked)) {
            err = err + "Citizenship: missing info on your citizenship\n";
        }
      }
    }


    if(err) {
        err = "Please correct the following information:\n\n"+err;
    }
    return err;
}

