jQuery(document).ready(function($) { var settings = Drupal.settings.booking_stripe; var $form = $("#" + settings.form_selector); var handler = StripeCheckout.configure({ key: settings.pubkey, image: settings.image, locale: 'auto', token: function(token) { // Use the token to create the charge with a server-side script. // You can access the token ID with `token.id` if (currentForm === undefined) return; currentForm.find('input[name="token_id"]').val(token.id); currentForm.find('input[name="token_email"]').val(token.email); currentForm.submit(); } }); var currentForm = undefined; $('.form-submit').click(function (e) { currentForm = $(this).closest('form'); if (currentForm === undefined) return; handler.open({ name: settings.name, description: currentForm.find('input[name="description"]').val(), email: currentForm.find('input[name="email"]').val(), currency: "aud", amount: currentForm.find('input[name="amount"]').val() * 100, closed: function() { //document.getElementById("booking_stripe_form").submit(); } }); e.preventDefault(); }); // Close Checkout on page navigation //$(window).on('popstate', function() { // handler.close(); //}); });