// David M Rautert
// October 2, 2007
// Form Validation


/*
** Configuration Directives
*/

var effects = false;


function validForm() {
    if (!document.getElementsByTagName) { return; }

    // fname
    var fname = document.signup_form.person_firstName.value;
    if (fname == null || fname == "") {
        popUpMessage("Please enter your first name.");
        return false;
    }

    // lname
    var lname = document.signup_form.person_lastName.value;
    if (lname == null || lname == "") {
        popUpMessage("Please enter your last name.");
        return false;
    }

    //selection - professional designation
    var profdesign = document.signup_form.professional_designation.value;
    if (profdesign == 1) {
        popUpMessage("Please select your professional designation.");
        return false;
    }

    //selection - specialty
    var spec = document.signup_form.specialty.value;
    if (spec == 1) {
        popUpMessage("Please select your specialty.");
        return false;
    }

    // Email validation
    var emailAddress = document.signup_form.person_email.value;
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!filter.test(emailAddress)) {
        popUpMessage("Please enter a valid email address.");
        return false;
    }

    // street address
    var streetaddr = document.signup_form.person_homeAddress_street1.value;
    if (streetaddr == null || streetaddr == "") {
        popUpMessage("Please enter your street address.");
        return false;
    }

    // Zip Code validation
    var zipCode = document.signup_form.person_homeAddress_zipcode.value;
    var re = /^\d{5}([\-]\d{4})?$/;
    if (!re.test(zipCode)) {
        popUpMessage("Please enter a valid zip code.");
        return false;
    }

    //selection - birthYear
    var birthYearValue = document.signup_form.person_birthYear.value;
    if (birthYearValue == 1) {
        popUpMessage("Please select your year of birth.");
        return false;
    }


    // Checkbox validation
    var checkbox = document.signup_form.agreeTerms;
    if (checkbox.checked != true) {
        popUpMessage("You must agree to the terms of use before proceeding.");
        return false;
    }

    return true;

}

function validForm2() {
    if (!document.getElementsByTagName) { return; }

    // fname
    var fname = document.signup_form.person_firstName.value;
    if (fname == null || fname == "") {
        popUpMessage("Please enter your first name.");
        return false;
    }

    // lname
    var lname = document.signup_form.person_lastName.value;
    if (lname == null || lname == "") {
        popUpMessage("Please enter your last name.");
        return false;
    }

    // Email validation
    var emailAddress = document.signup_form.person_email.value;
    var filter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
    if (!filter.test(emailAddress)) {
        popUpMessage("Please enter a valid email address.");
        return false;
    }

    // street address
    var streetaddr = document.signup_form.person_homeAddress_street1.value;
    if (streetaddr == null || streetaddr == "") {
        popUpMessage("Please enter your street address.");
        return false;
    }

    // Zip Code validation
    var zipCode = document.signup_form.person_homeAddress_zipcode.value;
    var re = /^\d{5}([\-]\d{4})?$/;
    if (!re.test(zipCode)) {
        popUpMessage("Please enter a valid zip code.");
        return false;
    }

    //selection - birthYear
    var birthYearValue = document.signup_form.person_birthYear.value;
    if (birthYearValue == 1) {
        popUpMessage("Please select your year of birth.");
        return false;
    }


    // gender buttons 
    var form = $('signup_form');
    var buttons = form.getInputs('radio', 'person_gender');
    for (i = 0; i < buttons.length; i++) {
        if (buttons[i].checked == true) {
            var somethingIsChecked = true;
        }
    }
    if ((somethingIsChecked != true) && (buttons.length > 0)) {
        popUpMessage("Please select your gender.");
        return false;
    }


    // Checkbox validation
    var checkbox = document.signup_form.agreeTerms;
    if (checkbox.checked != true) {
        popUpMessage("You must agree to the terms of use before proceeding.");
        return false;
    }

    return true;

}

function popUpMessage(myMessage) {
    if (effects == true) {
        new Effect.Appear('d3', { duration: 1.0, queue: 'front' });
        new Effect.Fade('d2', { duration: 4.0, queue: 'end' });
    } else {
        alert(myMessage);
    }
}


