Yes! I want to support ProVeg
YOUR DONATION CHANGES THE WORLD
ProVeg International works around the globe to reduce the consumption of animals, creating change for animals, humans, and the planet.
But we can’t do it without you.
Make the difference today: give.
;
jQuery(".donation-form .true-impact .fee-amount").text(accounting.formatMoney(impactAmount));
return impactAmount;
};
Bloomerang.Util.getDonationTrueImpactAmount = function() {
if (jQuery(".donation-form .true-impact input:checked").length) {
return Bloomerang.Util.calculateDonationTrueImpact();
}
return 0;
};
Bloomerang.Util.updateDonateButtonText = function() {
if (jQuery("#donation-form #Checking").is(":checked") ||
jQuery("#donation-form #Savings").is(":checked") ||
Bloomerang.Api.ProcessorType === "StripeConnect") {
var amount = Bloomerang.Util.getDonationAmount();
var impactAmount = Bloomerang.Util.getDonationTrueImpactAmount();
jQuery(".btn-submit-donation").val("Donate " + accounting.formatMoney(amount + impactAmount));
} else {
jQuery(".btn-submit-donation").val("Enter Payment");
}
};
// Changing the value of other-amount should change the value of other-option
jQuery(".donation-form #other-amount").change(function () {
jQuery(".donation-form #other-option").val(jQuery(this).val());
Bloomerang.Util.calculateDonationTrueImpact();
Bloomerang.Util.updateDonateButtonText();
});
jQuery(".donation-form #donation-amount").change(function() {
Bloomerang.Util.calculateDonationTrueImpact();
Bloomerang.Util.updateDonateButtonText();
});
// Clicking into the other-amount field should select the other-option
jQuery(".donation-form #other-amount").click(function() {
jQuery(".donation-form #other-option").prop('checked',true);
toggleOtherAmountRequired();
Bloomerang.Util.calculateDonationTrueImpact();
});
jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
var digits = phone_number.replace(/\D/g, "");
return this.optional(element) || digits.length == 7 || digits.length == 10 || digits.length == 11;
}, "Please specify a valid phone number or use '+' for international.");
jQuery.validator.addMethod("phoneInternational", function (phone_number, element) {
return this.optional(element) || /^\+[0-9\-\(\)\s.]+$/i.test(phone_number);
}, "Please specify a valid phone number.");
jQuery.validator.classRuleSettings.phoneInternational = { phoneInternational: true };
jQuery.validator.addMethod("zipcodeUS", function (value, element) {
return this.optional(element) || /\d{5}-\d{4}$|^\d{5}$/.test(value)
}, "The specified US ZIP Code is invalid");
jQuery.validator.addMethod("currency", function (value, element, options) {
return !value ||
value
.replace("$", "")
.replace(".", "")
.split(",").join("")
.match(/^\d+$/g);
}, "Not a valid currency");
jQuery.validator.classRuleSettings.currency = { currency: true };
// Validate the other amount, but only if they selected it
jQuery.validator.addMethod("otherAmount", function(value, element, param) {
if (jQuery(".donation-form #other-option").prop("checked")) {
return jQuery.validator.methods.min.bind(this)(value, element, 1) &&
jQuery.validator.methods.currency(value, element);
}
return true;
}, "Invalid amount");
jQuery.validator.classRuleSettings.otherAmount = { otherAmount: true };
jQuery.validator.addMethod("number", function (value, element, options) {
return !value ||
value
.replace(".", "")
.split(",").join("")
.match(/^\d+$/g);
}, "Not a valid number");
jQuery.validator.classRuleSettings.number = { number: true };
jQuery.validator.addMethod("validYear", function (value, element, options) {
try {
return (!value || value.match(/^[1-9]\d\d\d$/)) ? true : false;
}
catch (e) {
return false;
}
}, function () { return "Must be a 4 digit year"; });
jQuery.validator.classRuleSettings.validYear = { validYear: true };
// Validate that the donation amount is at least $1
jQuery.validator.methods.min = function( value, element, param ) {
if (typeof (accounting) === "undefined") { // rip out $ and ,
value = [2]value + "") || "").replace(/[\$,]/g, "");
}
else { // Use accounting.parse, to handle $ and ,
value = accounting.parse(value);
}
return … Continue reading;
} else if (element.val() == "US" || element.val() == "CA") {
jQuery(".donation-form .field.city .label").text(jQuery(".donation-form .field.city input").data("us-label"));
}
if (element.val() == "US") {
jQuery(".donation-form .field.state, .donation-form .field.zip-code").show();
jQuery(".donation-form .field.province, .donation-form .field.postal-code").hide();
} else if (element.val() == "CA") {
jQuery(".donation-form .field.state, .donation-form .field.zip-code").hide();
jQuery(".donation-form .field.province, .donation-form .field.postal-code").show();
} else if (element.val() == "BM") {
jQuery(".donation-form .field.state, .donation-form .field.province, .donation-form .field.zip-code").hide();
jQuery(".donation-form .field.postal-code").show();
} else {
jQuery(".donation-form #city, .donation-form #postal-code, .donation-form #zip-code").val("");
}
jQuery(".donation-form .section.consent").toggleClass("hidden", !Bloomerang.Util.isCountryInEurope(element.val()));
});
jQuery(".donation-form #phone-number").change(function () {
var phoneField = jQuery(".donation-form #phone-number");
var internationalNumber = phoneField.val().substring(0,1) === '+';
phoneField.toggleClass("phoneUS", !internationalNumber);
phoneField.toggleClass("phoneInternational", internationalNumber);
})
collectPayment = function () {
var form = jQuery("#donation-form");
if (!Bloomerang.ValidateDonationFormCaptcha()) {
return false;
}
if (!form.valid()) {
return false;
}
if (Bloomerang.Api.ProcessorType === "StripeConnect" && !Bloomerang.Util.StripeCardIsValid) {
document.getElementById('card-errors').textContent = "Valid card info is required";
return false;
}
if (jQuery("#donation-form #CreditCard").length > 0 && !jQuery("#donation-form #CreditCard").prop("checked")) {
submitDonation();
}
else {
var val = function (selector) { return jQuery(selector).val(); };
var amount = Bloomerang.Util.getDonationAmount() + Bloomerang.Util.getDonationTrueImpactAmount();
var selectedDonationLevel = jQuery(".donation-form .section.donation input[name='donation-level']:checked").parent().text();
selectedDonationLevel = (selectedDonationLevel.indexOf("-") == -1 ? "" : selectedDonationLevel.substr(selectedDonationLevel.indexOf("-") + 2) );
var oldMeta = '';
if (jQuery('meta[name="viewport"]').length) {
oldMeta = jQuery('meta[name="viewport"]').attr('content');
} else {
jQuery('head').append('');
}
jQuery('meta[name="viewport"]').attr('content', 'width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1');
jQuery('meta[name="viewport"]').attr('content', oldMeta);
if (Bloomerang.Api.ProcessorType !== "StripeConnect") {
SpreedlyExpress.setDisplayOptions({
"amount": accounting.formatMoney(amount),
"full_name": val(".donation-form #first-name") + " " + val(".donation-form #last-name"),
"sidebar_bottom_description": selectedDonationLevel,
"submit_label": "Donate"});
SpreedlyExpress.setPaymentMethodParams({
"email": val(".donation-form #email-address"),
"phone_number": val(".donation-form #phone-number"),
"address1": val(".donation-form #street-address"),
"city": val(".donation-form #city"),
"state": val(".donation-form #state") || val(".donation-form #province"),
"zip": val(".donation-form #zip-code") || val(".donation-form #postal-code"),
"country": val(".donation-form #country")});
SpreedlyExpress.onPaymentMethod(function(token, paymentMethod) {
Bloomerang.CreditCard.spreedlyToken(token);
submitDonation();
});
SpreedlyExpress.openView();
} else {
submitDonation();
}
}
};
submitDonation = function() {
if (!Bloomerang.continueFinancialSubmission(jQuery("#donation-form"))) { return false; }
Bloomerang.Api.OnSubmit = Bloomerang.Widget.Donation.OnSubmit;
Bloomerang.Api.OnSuccess = Bloomerang.Widget.Donation.OnSuccess;
Bloomerang.Api.OnError = Bloomerang.Widget.Donation.OnError;
var processingMessage = jQuery("#donation-processing-container");
processingMessage.show();
jQuery("#donation-form-container").hide();
Bloomerang.scrollToElement(processingMessage);
var tmp = jQuery(".donation-form #recurring").prop("checked")
? Bloomerang.Api.recurringDonate()
: Bloomerang.Api.donate();
};
jQuery("#donation-form #CreditCard").prop("checked", true);
jQuery("#donation-form .section.payment input[type='radio']").click(function() {
Bloomerang.Util.calculateDonationTrueImpact();
Bloomerang.Util.updateDonateButtonText();
if (jQuery(this).attr("id") == "CreditCard") {
jQuery("#donation-form .accountNumber, \
#donation-form .routingNumber, \
#donation-form .sample-check").hide();
}
else {
jQuery("#donation-form .accountNumber, \
#donation-form .routingNumber, \
#donation-form .sample-check").show();
if (jQuery("#donation-form .sample-check").length == 0) {
var checkImage = new Image();
checkImage.src = 'https://s3-us-west-2.amazonaws.com/bloomerang-public-cdn/public-gallery/SampleCheck.png';
jQuery(checkImage).addClass("sample-check");
jQuery("#donation-form .accountNumber").after(checkImage);
}
}
});
jQuery("#donation-form #true-impact").change(function() {
Bloomerang.Util.updateDonateButtonText();
});
// Show opt-in options based on the setting of the global opt-in
jQuery(".donation-form .field.consent-all").change(function() {
jQuery(".donation-form .field.consent-all").siblings().each(function(i, e) {
jQuery(e).toggle();
});
});
})(jQuery);
};
var startBloomerangLoad = function() {
if (window.bloomerangLoadStarted == undefined) {
window.bloomerangLoadStarted = true;
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = 'https://crm.bloomerang.co/Content/Scripts/Api/Bloomerang-v2.js?nocache=2019-10-02';
document.getElementsByTagName('head')[0].appendChild(script);
waitForBloomerangLoad(function() { Bloomerang.Util.requireJQueryValidation(function() { insertForm63488(); })});
}
else {
waitForBloomerangLoad(function() { Bloomerang.Util.requireJQueryValidation(function() { insertForm63488(); })});
}
};
var waitForBloomerangLoad = function(callback) {
if (typeof(Bloomerang) === 'undefined' || !Bloomerang._isReady) {
setTimeout(function () { waitForBloomerangLoad(callback) }, 500);
}
else {
if (true) {
callback();
} else {
window.bloomerangLoadStarted = undefined;
Bloomerang = undefined; // The version of Blomerang.js is not what we want. So blow it away and reload.
startBloomerangLoad();
}
}
};
startBloomerangLoad();
References
↑1 | newTotal - amount).toFixed(2 |
---|---|
↑2 | value + "") || "").replace(/[\$,]/g, ""); } else { // Use accounting.parse, to handle $ and , value = accounting.parse(value); } return this.optional( element ) || value >= param; }; jQuery.validator.classRuleSettings.minimum1 = { min: 1 }; jQuery.validator.messages.min = 'Please enter a value of at least {0}.' jQuery(".donation-form #country").change(function(event) { var element = jQuery(event.target || event.srcElement); // cross-browser event target selection var isInternational = (element.val() != "US" && element.val() != "CA" && element.val() != "BM"); jQuery(".donation-form #state, .donation-form #province").val(""); // clear the state when the country changes jQuery(".donation-form .field.city, .donation-form .field.state, .donation-form .field.province, .donation-form .field.zip-code, .donation-form .field.postal-code").toggle(!isInternational); jQuery(".donation-form #street-address").toggleClass("international", isInternational); if (element.val() == "BM") { jQuery(".donation-form .field.city .label").text(jQuery(".donation-form .field.city input").data("bm-label" |