﻿/// <reference path="~/pzMedia/js/jquery-1.3.2-vsdoc.js" />
// some JQUERY validation rules for the forms

// ask a question form validation rules
function doValidateAskQuestionForm(email, err) {
    var hasErrors = false;
    if (!doValidateField(email, "youremail_li", err)) {
        hasErrors = true;
    }
    if (hasErrors == false) {
        if (!doValidateEmail(email, "youremail_li", err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        $('#frmAskQuestion').hide();
        return true;
    }
}

// ask a question form validation rules
function doValidateFeedbackForm(email, err) {
    var hasErrors = false;
    if (!doValidateField(email, "youremail_li", err)) {
        hasErrors = true;
    }
    if (hasErrors == false) {
        if (!doValidateEmail(email, "youremail_li", err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        $('#feedbackForm').hide();
        return true;
    }
}



// contact form validation rules
function doValidateContactForm(firstName, surname, email, confirm_email, err) {
    var hasErrors = false;
    if (!doValidateField(firstName, "firstName_li", err))
        hasErrors = true;
    if (!doValidateField(surname, "surname_li", err))
        hasErrors = true;
    if (!doValidateField(email, "email_li", err))
        hasErrors = true;
    if (!doValidateField(confirm_email, "confirm_email_li", err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doCompareField(email, confirm_email, "email_li", "confirm_email_li", err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        $('#frmContactUs').hide();
        $('.contactUsSend').hide();
        return true;
    }
}


// study contact us form validation rules
function doValidateStudyContactUsForm(firstName, surname, email, confirm_email, err) {
    var hasErrors = false;
    if (!doValidateField(firstName, "firstName_li", err))
        hasErrors = true;
    if (!doValidateField(surname, "surname_li", err))
        hasErrors = true;
    if (!doValidateField(email, "email_li", err))
        hasErrors = true;
    if (!doValidateField(confirm_email, "confirm_email_li", err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doValidateEmail(email, "email_li", err))
            hasErrors = true;
        if (!doCompareField(email, confirm_email, "email_li", "confirm_email_li", err))
            hasErrors = true;
    }

    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        return true;
    }
}

// buy publication
function doValidateOrderForm(firstName, lastName, email, flatNumber, postCode, telephone, numberOfCopies, err) {
    var hasErrors = false;
    if (!doValidateField(firstName, "liFirstname", err))
        hasErrors = true;
    if (!doValidateField(lastName, "liSurname", err))
        hasErrors = true;
    if (!doValidateField(email, "liEmail", err))
        hasErrors = true;
    if (!doValidateField(flatNumber, "liFlatNumber", err))
        hasErrors = true;
    if (!doValidateField(postCode, "liPostcode", err))
        hasErrors = true;
    if (!doValidateField(telephone, "liTelephone", err))
        hasErrors = true;
    if (!doValidateField(numberOfCopies, "liNumberOfCopies", err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doValidateEmail(email, "liEmail", err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        return true;
    }
}

// share page validation rules
function doValidateSharePageForm(emailto, emailfrom, err, emailtoerr, emailfromerr) {
    var hasErrors = false;
    if (!doValidateField(emailto, emailtoerr, err))
        hasErrors = true;
    if (!doValidateField(emailfrom, emailfromerr, err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doValidateEmail(emailto, emailtoerr, err))
            hasErrors = true;
        if (!doValidateEmail(emailfrom, emailfromerr, err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        return true;
    }
}

// newsletter validation rules
function doValidateNewsletterForm(firstName, lastName, email, confirmemail, err) {
    var hasErrors = false;
    if (!doValidateField(firstName, "liNewsletterFirstname", err))
        hasErrors = true;
    if (!doValidateField(lastName, "liNewsletterSurname", err))
        hasErrors = true;
    if (!doValidateField(email, "liNewsletterEmail", err))
        hasErrors = true;
    if (!doValidateField(confirmemail, "liNewsletterConfirmEmail", err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doValidateEmail(email, "liNewsletetrEmail", err))
            hasErrors = true;
        if (!doValidateEmail(confirmemail, "liNewsletterConfirmEmail", err))
            hasErrors = true;
    }
    if (hasErrors == false) {
        if (!doCompareField(email, confirmemail, "liNewsletterEmail", "liNewsletterConfirmEmail", err))
            hasErrors = true;
    }
    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        return true;
    }
}

// share page validation rules
function doValidateCompactApplicationForm(firstName, lastName, postCode, email, telephone, timeToCall, err) {
    var hasErrors = false;
    if (!doValidateField(firstName, "liFirstname", err))
        hasErrors = true;
    if (!doValidateField(lastName, "liSurname", err))
        hasErrors = true;
    if (!doValidateField(postCode, "liPostcode", err))
        hasErrors = true;
    if (!doValidateField(email, "liEmail", err))
        hasErrors = true;
    if (!doValidateField(telephone, "liTelephone1", err))
        hasErrors = true;
    if (!doValidateField(timeToCall, "liTimeToCall1", err))
        hasErrors = true;
    if (hasErrors == false) {
        if (!doValidateEmail(email, "liEmail", err))
            hasErrors = true;
    }

    if (hasErrors == true) {
        $('#' + err).addClass("col3bloc_excl");
        return false;
    } else {
        $('#' + err).html('');
        $('#' + err).removeClass("col3bloc_excl");
        return true;
    }
}


// validate the field
function doValidateField(field, output, err) {
    if ($('#' + field).val() == "") {
        $('#' + output).addClass("error");
        $('#' + err).html('Please fill in all required fields');
        return false;
    } else {
        $('#' + output).removeClass("error");
        return true;
    }
}

// compare the field
function doCompareField(field1, field2, output1, output2, err) {
    if ($('#' + field1).val() != "" && $('#' + field2).val() != "") {
        if ($('#' + field1).val() != $('#' + field2).val()) {
            $('#' + output1).addClass("error");
            $('#' + output2).addClass("error");
            $('#' + err).html('Fields do not match');
            return false;
        } else {
            $('#' + output1).removeClass("error");
            $('#' + output2).removeClass("error");
            return true;
        }
    }
}

// validate the email address
function doValidateEmail(email, output, err) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    if (!emailPattern.test($('#' + email).val())) {
        $('#' + output).addClass("error");
        $('#' + err).html('Email not valid');
        return false;
    } else {
        $('#' + output).removeClass("error");
        return true;
    }
}

