function doOrderPublicationValidation() {
    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var telephone = $("input[id *= 'txtTelephone']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");

    var publicationType = $("input[id *= 'hfPublicationType']"); 
    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(telephone.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        if (publicationType.val() == "Health professional") {
            _gaq.push(['_trackEvent', 'Health Professionals', 'Order - Resources', '']);
        } else {
            _gaq.push(['_trackEvent', 'Information', 'Order', '']);
        }
    }
    return !hasErrors;

}


function doEventsSignupRequestValidation() {
    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");
    var eventDate = $("input[id *= 'txtEventDate']");
    var event = $("input[id *= 'txtEvent']");
    var seekingGuaranteedPlace_yes = $("input[id *= 'rbSeekingGuranteedPlace_Yes']");
    var seekingGuaranteedPlace_no = $("input[id *= 'rbSeekingGuranteedPlace_No']");
    var sendFundraisingPack_yes = $("input[id *= 'rbSendFundraisingPack_Yes']");
    var sendFundraisingPack_no = $("input[id *= 'rbSendFundraisingPack_No']");

    var seekingGuaranteedPlaceLabel = $("span[id *= 'lblSeekingGuaranteedPlace']");
    var sendFundraisingPackLabel = $("span[id *= 'lblSendFundraisingPack']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var invalidDateErrorMessage = $("span[id *= 'lblInvalidDateErrorMessage']");

    // jw 14/12/2010 - no longer needed as per change request
    //if (($('#' + sendFundraisingPack_yes.attr('id') + ':checked').val() != "rbSendFundraisingPack_Yes") && ($('#' + sendFundraisingPack_no.attr('id') + ':checked').val() != "rbSendFundraisingPack_No")) {
    //    $('#' + sendFundraisingPackLabel.attr('id')).addClass("error");
    // $('#' + sendFundraisingPackLabel.attr('id')).focus();
    //    hasRequiredFieldErrors = true;
    //   } else {
    //      $('#' + sendFundraisingPackLabel.attr('id')).removeClass("error");
    //  }



    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;

    if (($('#' + seekingGuaranteedPlace_yes.attr('id') + ':checked').val() != "rbSeekingGuranteedPlace_Yes") && ($('#' + seekingGuaranteedPlace_no.attr('id') + ':checked').val() != "rbSeekingGuranteedPlace_No")) {
        $('#' + seekingGuaranteedPlaceLabel.attr('id')).addClass("error");
        //  $('#' + seekingGuaranteedPlaceLabel.attr('id')).focus();
        hasRequiredFieldErrors = true;
    } else {
        $('#' + seekingGuaranteedPlaceLabel.attr('id')).removeClass("error");
    }

    if (!doCheckRequiredField(event.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if ($('#' + eventDate.attr('id')).val() != "") {
        if (!doValidateDate(eventDate.attr('id'))) {
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "none");
    }


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        _gaq.push(['_trackEvent', 'Fundraising', 'Event registration', '']);
    }
    return !hasErrors;

}




function doSupportCampaignRegistrationValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;
    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        _gaq.push(['_trackEvent', 'Advocate', 'Registration - Campaigns', '']);
    }
    return !hasErrors;

}


function doAwarenessTalksFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");
    var telephone = $("input[id *= 'txtTelephone']");
    var eventDate = $("input[id *= 'txtEventDate']");
    var eventTime = $("input[id *= 'txtEventTime']");
    var venueAddress = $("input[id *= 'txtVenueAddress']");


    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var invalidDateErrorMessage = $("span[id *= 'lblInvalidDateErrorMessage']");

    if (!doCheckRequiredField(venueAddress.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(eventTime.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(eventDate.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateDate(eventDate.attr('id'))) {
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "none");
    }


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(telephone.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    }
    return !hasErrors;


}



function doDonateOnlineFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    if (!doCheckRequiredField('txtEmailAddress'))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail($("#txtEmailAddress"))) {
            $("#lblInvalidEmailErrorMessage").css("display", "block");
            hasErrors = true;
        }
        else
            $("#lblInvalidEmailErrorMessage").css("display", "none");
    }


    if (!doCheckRequiredField('txtPostcode'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtCounty'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtTownOrCity'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtAddress'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtLastName'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtFirstName'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtTitle'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtDonateAmount'))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $("#lblRequiredFieldsErrorMessage").css("display", "block");
        hasErrors = true;
    }
    else
        $("#lblRequiredFieldsErrorMessage").css("display", "none");

    if (!doValidatePaymentAmount('txtDonateAmount')) {
        hasErrors = true;
        $('#lblInvalidDonationAmount').css("display", "block");
    } else {
        $('#lblInvalidDonationAmount').css("display", "none");
    }

    if (!doCheckCaptcha()) {
        $("#lblInvalidCaptchaErrorMessage").css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $("#lblInvalidCaptchaErrorMessage").css("display", "none");
    }

    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }
    return !hasErrors;


}




function doMemoriamDonateFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var donateAmount = $("input[id *= 'txtDonateAmount']");
    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var invalidDonationAmountErrorMessage = $("span[id *= 'lblInvalidDonationAmount']");


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(donateAmount.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doValidatePaymentAmount(donateAmount.attr('id'))) {
        hasErrors = true;
        $('#' + invalidDonationAmountErrorMessage.attr('id')).css("display", "block");
    } else {
        $('#' + invalidDonationAmountErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;


}


function doCelebrationsRequestPackValidation() {


    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostCode']");
    var email = $("input[id *= 'txtEmailAddress']");
    var celebrationDate = $("input[id *= 'txtCelebrationDate']");


    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var invalidDateErrorMessage = $("span[id *= 'lblInvalidDateErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }


    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");



    if ($('#' + celebrationDate.attr('id')).val() != "") {
        if (!doValidateDate(celebrationDate.attr('id'))) {
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "none");
    }



    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    }
    return !hasErrors;


}

function doEmailHelplineNursesValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var townOrCity = $("input[id *= 'txtNearestTownOrCity']");
    var email = $("input[id *= 'txtEmailAddress']");
    var age = $("input[id *= 'txtAge']");
    var question = $("textarea[id *= 'txtQuestion']");
    var gender = $("select[id *= 'ddlGender']");
    var diagnosisDate = $("input[id *= 'txtDiagnosisDate']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var invalidDateErrorMessage = $("span[id *= 'lblInvalidDateErrorMessage']");

    if (!doCheckRequiredField(question.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(gender.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(age.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if ($('#' + diagnosisDate.attr('id')).val() != "") {
        if (!doValidateDate(diagnosisDate.attr('id'))) {
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidDateErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        _gaq.push(['_trackEvent', 'Support', 'Email nurse', '']);
    }
    return !hasErrors;

}

function doFeedbackValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var email = $("input[id *= 'txtEmailAddress']");
    var feedbackDetails = $("textarea[id *= 'txtFeedbackDetails']");
    var feedbackType = $("select[id *= 'ddlFeedbackNature']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(feedbackType.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(feedbackDetails.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        _gaq.push(['_trackEvent', 'Charity', 'Feedback form submit', '']);
    }
    return !hasErrors;

}


function doWillGiftFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var message = $("textarea[id *= 'txtMessage']");
    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(message.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }


    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    }
    return !hasErrors;


}


function doClubInformationRequestValidate() {


    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var county = $("input[id *= 'txtCounty']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");

    }

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(county.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    }
    return !hasErrors;

}

function doNewsletterUnsubscribeValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var email = $("input[id *= 'txtEmailAddress']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");

    if (!doCheckRequiredField(email.attr('id'))) {
        hasRequiredFieldErrors = true;
        hasErrors = true;
    }
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;
}

function doNewsletterSignupValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var email = $("input[id *= 'txtEmailAddress']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }



    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;



    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");



    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }

    if (hasErrors) {
        $('html, body').animate({ scrollTop: 0 }, 'fast');
    } else {
        _gaq.push(['_trackEvent', 'Health Professionals', 'Sign up for e-newsletters', '']);
    }
    return !hasErrors;


}

function doValidationDonationAmount() {

    var hasErrors = false;
    var invalidDonationAmountMessage = $("#invalidDonationAmount");
    if (!doValidatePaymentAmount('donationAmount')) {
        $('#' + invalidDonationAmountMessage.attr('id')).css("display", "block");
        hasErrors = true;
    } else {
        $('#' + invalidDonationAmountMessage.attr('id')).css("display", "none");
    }

    return !hasErrors;

}

function doValidateDonationPaymentModule() {
    var hasErrors = false;
    if ($('#donateRadio').attr('checked')) {
        $('#paymentAmount').val($('#donationAmount').val() * 100)
        if (!doValidatePaymentAmount('donationAmount')) {
            hasErrors = true;
        }
    }
    return !hasErrors;
}

function doCreateBaubleValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    if (!doCheckRequiredField('txtEmail')) {
        hasRequiredFieldErrors = true;
        hasErrors = true;
    }
    else {
        if (!doValidateEmail('txtEmail')) {
            $('#lblInvalidEmailErrorMessage').css("display", "block")
            hasErrors = true;
        } else {
            $('#lblInvalidEmailErrorMessage').css("display", "none")
        }
    }

    if (!doCheckRequiredField('txtDedication'))
        hasRequiredFieldErrors = true;


    if (!doCheckRequiredField('txtName'))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField('txtMessage'))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#lblRequiredFieldsErrorMessage').css("display", "block");
        hasErrors = true;
    } else {
        $('#lblRequiredFieldsErrorMessage').css("display", "none");
    }

    if ($('#txtDonateAmount').val() != '') {
        if (!doValidatePaymentAmount('txtDonateAmount')) {
            hasErrors = true;
            $('#lblInvalidDonationAmount').css("display", "block");
        } else {
            $('#lblInvalidDonationAmount').css("display", "none");
        }
    }

    if (!$('#bauble1').attr('checked') && !$('#bauble2').attr('checked') && !$('#bauble3').attr('checked') && !$('#bauble4').attr('checked')) {
        $('#lblRequiredBauble').css("display", "block");
        hasErrors = true;
    }
    else {
        $('#lblRequiredBauble').css("display", "none");
    }

    if (!$('#agreeTerms').attr('checked')) {
        $('#lblAgreeToTerms').css("display", "block");
        hasErrors = true;
    }
    else {
        $('#lblAgreeToTerms').css("display", "none");
    }

    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;

}

// validate the payment amount
function doValidatePaymentAmount(paymentAmount) {
    if ($('#' + paymentAmount).val() == '' || isNaN($('#' + paymentAmount).val())) {
        $('#' + paymentAmount).addClass("error");
        return false;
    }
    else {
        $('#' + paymentAmount).removeClass("error");
        return true;
    }
}

// validate the order
function doValidateOrder(type) {

    var hasInvalidNumber = false;
    var hasQuantityError = false;

    var orderQuantities = $("input[id *= 'publicationQuantity']")
    var numberPattern = /^[0-9]*$/;

    var maxQuantities = $("input[id *= 'maxQuantity']")
    var arrayOfMaxQuantities = jQuery.makeArray(maxQuantities);

    $.each(orderQuantities, function (index, e) {

        if (!numberPattern.test($(e).val()) || parseInt($(e).val()) == 0) {
            $(e).addClass("error");
            $(e).focus();
            hasInvalidNumber = true;

        } else {

            var quantityElement = arrayOfMaxQuantities[index];

            if (parseInt($(e).val()) > $(quantityElement).val()) {
                $(e).addClass("error");
                $(e).focus();
                $(e).next().addClass("error");
                hasQuantityError = true;
            } else {
                $(e).removeClass("error");
                $(e).next().removeClass("error");
            }

        }

    });

    if (hasInvalidNumber) {
        $('#invalidquantity').css("display", "block");
    } else {
        $('#invalidquantity').css("display", "none");
    }

    if (hasQuantityError) {
        $('#quantityExceeded').css("display", "block");
    } else {
        $('#quantityExceeded').css("display", "none");
    }

    if (hasQuantityError || hasInvalidNumber) {
        return false;
    } else {
        return true;
    }

}

function doMicroSitePcamFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;
    var hasRequiredResorucesErrors = true;


    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("input[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");
    var telephone = $("input[id *= 'txtTelephone']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var requiredResourcesErrorMessage = $("span[id *= 'lblRequiredResourcesErrorMessage']");

    $("input[id *= 'chkOrderResource']").each(function (e) {
        if ($(this).is(':checked')) {
            hasRequiredResorucesErrors = false;
        }
    });


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(telephone.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");

    if (hasRequiredResorucesErrors) {

        $("img[id *= 'imgResourceImage']").each(function (e) {
            $(this).addClass("img-error");
        });

        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }


    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;

}

function doGalleryPictureUploadValidation() {

    $("input[id *= 'btnSubmitGalleryPictureUpload']").removeClass('submitUpload');
    $("input[id *= 'btnSubmitGalleryPictureUpload']").addClass('submitUploaded');

    if ($.browser.msie || $.browser.safari) { $("input[id *= 'btnSubmitGalleryPictureUpload']").css("background-color", "#848484"); }

    var hasRequiredFieldErrors = false;
    var hasErrors = false;

    var name = $("input[id *= 'txtName']");
    var email = $("input[id *= 'txtEmail']");
    var message = $("textarea[id *= 'txtMessage']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");

    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(name.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(message.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");

    if (hasErrors) {
        $("input[id *= 'btnSubmitGalleryPictureUpload']").removeClass('submitUploaded');
        $("input[id *= 'btnSubmitGalleryPictureUpload']").addClass('submitUpload');

        if ($.browser.msie || $.browser.safari) { $("input[id *= 'btnSubmitGalleryPictureUpload']").css("background-color", ""); }

    }
    return !hasErrors;

}

function doMicroSiteStandardFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;
    var hasRequiredResorucesErrors = true;


    var title = $("input[id *= 'txtTitle']");
    var firstName = $("input[id *= 'txtFirstName']");
    var lastName = $("input[id *= 'txtLastName']");
    var address = $("textarea[id *= 'txtAddress']");
    var townOrCity = $("input[id *= 'txtTownOrCity']");
    var postCode = $("input[id *= 'txtPostcode']");
    var email = $("input[id *= 'txtEmailAddress']");
    var telephone = $("input[id *= 'txtTelephone']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var invalidCaptchaErrorMessage = $("span[id *= 'lblInvalidCaptchaErrorMessage']");
    var requiredResourcesErrorMessage = $("span[id *= 'lblRequiredResourcesErrorMessage']");

    $("input[id *= 'chkOrderResource']").each(function (e) {
        if ($(this).is(':checked')) {
            hasRequiredResorucesErrors = false;
        }
    });


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCheckRequiredField(telephone.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(postCode.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(townOrCity.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(address.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(lastName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(firstName.attr('id')))
        hasRequiredFieldErrors = true;

    if (!doCheckRequiredField(title.attr('id')))
        hasRequiredFieldErrors = true;

    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");

    if (hasRequiredResorucesErrors) {

        $("img[id *= 'imgResourceImage']").each(function (e) {
            $(this).addClass("img-error");
        });

        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "none");


    if (!doCheckCaptcha()) {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "block");
        Recaptcha.reload();
        hasErrors = true;
    }
    else {
        $('#' + invalidCaptchaErrorMessage.attr('id')).css("display", "none");
    }


    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;

}



function doMicroSitePcamFundraisingFormValidation() {

    var hasRequiredFieldErrors = false;
    var hasErrors = false;
    var hasRequiredResorucesErrors = true;
    var hasConfirmEmailErrors = false;

    var fullName = $("input[id *= 'txtFullName']");
    var email = $("input[id *= 'txtEmailAddress']");
    var confirmEmail = $("input[id *= 'txtConfirmEmailAddress']");
    var telephone = $("input[id *= 'txtTelephone']");
    var radioIndividual = $("input[id *= 'rbnIndividual']");
    var radioCompany = $("input[id *= 'rbnCompany']");

    var requiredErrorMessage = $("span[id *= 'lblRequiredFieldsErrorMessage']");
    var invalidEmailErrorMessage = $("span[id *= 'lblInvalidEmailErrorMessage']");
    var requiredResourcesErrorMessage = $("span[id *= 'lblRequiredResourcesErrorMessage']");
    var confirmEmailErrorMessage = $("span[id *= 'lblInvalidConfirmEmailErrorMessage']");
    

    $("input[id *= 'chkOrderResource']").each(function (e) {
        if ($(this).is(':checked')) {
            hasRequiredResorucesErrors = false;
        }
    });


    if (!doCheckRequiredField(email.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(email.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }


    if (!doCheckRequiredField(confirmEmail.attr('id')))
        hasRequiredFieldErrors = true;
    else {
        if (!doValidateEmail(confirmEmail.attr('id'))) {
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "block");
            hasErrors = true;
        }
        else
            $('#' + invalidEmailErrorMessage.attr('id')).css("display", "none");
    }

    if (!doCompareField(email.attr('id'), confirmEmail.attr('id'), email.attr('id'), confirmEmail.attr('id'))) {
        hasConfirmEmailErrors = true;
    }


    if ($("input[id *= 'rbnIndividual']:checked'").val() == null && $("input[id *= 'rbnCompany']:checked'").val() == null) {
        $("input[id *= 'rbnIndividual']'").parent().addClass("error");
        $("input[id *= 'rbnCompany']'").parent().addClass("error");
        hasRequiredFieldErrors = true;
    }
    else {
        $("input[id *= 'rbnIndividual']'").parent().removeClass("error");
        $("input[id *= 'rbnCompany']'").parent().removeClass("error");
    }

    if (!doCheckRequiredField(fullName.attr('id')))
        hasRequiredFieldErrors = true;


    if (hasRequiredFieldErrors) {
        $('#' + requiredErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredErrorMessage.attr('id')).css("display", "none");



    if (hasConfirmEmailErrors) {
        $('#' + confirmEmailErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + confirmEmailErrorMessage.attr('id')).css("display", "none");

    if (hasRequiredResorucesErrors) {

        $("img[id *= 'imgResourceImage']").each(function (e) {
            $(this).addClass("img-error");
        });

        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "block");
        hasErrors = true;
    }
    else
        $('#' + requiredResourcesErrorMessage.attr('id')).css("display", "none");


    if (hasErrors) {
        window.parent.$('html, body').animate({ scrollTop: 0 }, 'fast');
    }

    return !hasErrors;

}


// validate recaptcha
function doCheckCaptcha() {
    return true;
    var hasValidCaptcha = false;

    var challengeField = $("input#recaptcha_challenge_field").val();
    var responseField = $("input#recaptcha_response_field").val();

    $.ajax({
        async: false,
        type: "POST",
        url: "/webservices/publiczone/reCaptchaService.asmx/validatecaptcha",
        data: "{challenge: '" + challengeField + "', response: '" + responseField + "'}",
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (response) {
            hasValidCaptcha = response.d
        },
        error: AJAXError

    });

    return hasValidCaptcha;

}



// validate required field
function doCheckRequiredField(field) {

    if ($.trim($('#' + field).val()) == '') {
        $('#' + field).addClass("error");
        $('#' + field).focus();
        return false;
    } else {
        $('#' + field).removeClass("error");
        return true;
    }
}


// validate the number
function doValidateNumber(number, label) {

    var numberPattern = /^[0-9]*$/;

    if (!numberPattern.test($(number).val()) || parseInt($(number).val()) == 0) {
        $(label).addClass("error");
        $(label).focus();
        return false;
    } else {
        $(label).removeClass("error");
        return true;
    }
}

// validate the email address
function doValidateEmail(email) {
    var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
    if (!emailPattern.test($('#' + email).val())) {
        $('#' + email).addClass("error");
        $('#' + email).focus();
        return false;
    } else {
        $('#' + email).removeClass("error");
        return true;
    }
}

// compare valid date
function doValidateDate(date) {
    var datePattern = /^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2})$|^(([0-2]\d|[3][0-1])\/([0]\d|[1][0-2])\/[2][0]\d{2}\s([0-1]\d|[2][0-3])\:[0-5]\d\:[0-5]\d)$/
    if (!datePattern.test($('#' + date).val())) {
        $('#' + date).addClass("error");
        $('#' + date).focus();
        return false;
    } else {
        $('#' + date).removeClass("error");
        return true;
    }
}

// compare the field
function doCompareField(field1, field2, output1, output2) {
    if ($('#' + field1).val() != "" && $('#' + field2).val() != "") {
        if ($('#' + field1).val() != $('#' + field2).val()) {
            $('#' + output1).addClass("error");
            $('#' + output2).addClass("error");
            return false;
        } else {
            $('#' + output1).removeClass("error");
            $('#' + output2).removeClass("error");
            return true;
        }
    }
}



function AJAXError(XMLHttpRequest, textStatus, errorThrown) {
    alert(textStatus + ": " + errorThrown);
}

