impress/app/assets/javascripts/static/donate.js

36 lines
1 KiB
JavaScript
Raw Normal View History

(function() {
var donationForm = document.getElementById('donation-form');
2014-09-09 19:06:38 -07:00
var amountField = donationForm.querySelector(
'[name=donation\\[amount\\]]');
2014-09-10 12:32:54 -07:00
var emailField = donationForm.querySelector(
'[name=donation\\[donor_email\\]]');
var tokenField = donationForm.querySelector(
'[name=donation\\[stripe_token\\]]');
var checkout = StripeCheckout.configure({
2014-09-09 19:06:38 -07:00
key: donationForm.getAttribute('data-checkout-publishable-key'),
image: donationForm.getAttribute('data-checkout-image'),
token: function(token) {
tokenField.value = token.id;
2014-09-10 12:32:54 -07:00
emailField.value = token.email;
donationForm.submit();
}
});
donationForm.addEventListener('submit', function(e) {
if (!tokenField.value) {
e.preventDefault();
var amount = Math.floor(parseFloat(amountField.value) * 100);
if (!isNaN(amount)) {
checkout.open({
name: 'Dress to Impress',
description: 'Donation (thank you!)',
amount: amount
});
}
}
});
})();