﻿// ==================================================================================================
//  validate() Function :: This function validates a form. - NOTE: This requires jQuery to function.
// ==================================================================================================

function validate(formId) {
    var requiredFields  = $('#' + formId + ' input.required, #' + formId + ' textarea.required');
    var emailFields     = $('#' + formId + ' input.email');
    var emailExpression = new RegExp("\\w+([-+.\']\\w+)*@\\w+([-.]\\w+)*\\.\\w+([-.]\\w+)*");

    for (var i = 0; i < requiredFields.length; i++) {
        if (requiredFields[i].value == "") {
            return validationFailed(requiredFields[i], requiredFields[i].title);
        }

        for (var iii = 0; iii < emailFields.length; iii++) {
            if (requiredFields[i].id == emailFields[iii].id) {
                var checkEmail = emailExpression.exec(emailFields[iii].value);
                if (!checkEmail) { return validationFailed(emailFields[iii], emailFields[iii].value + " is not a valid email address."); }
            }
        }
    }

    return true;
}

//  validate() ------------------------------------------------------------------------------  end  -



// ==================================================================================================
//  validationFailed() Function :: This function displays the error message and sets focus.
// ==================================================================================================

function validationFailed(field, message) {
    alert(message);
    field.select();
    field.focus();
    return false;
}

//  validationFailed() ----------------------------------------------------------------------  end  -
