Sha256: 13128bd94b12ea6389aaaf93f03646f26709c10fe4269ccc7ba599c85751cab1

Contents?: true

Size: 1.27 KB

Versions: 216

Compression:

Stored size: 1.27 KB

Contents

stripeCustomerChangeCardHandler = (key, form) ->
  StripeCheckout.configure
    key: key
    closed: -> EffectiveForm.reset(form) unless form.hasClass('stripe-success')
    token: (token, args) ->
      if token.error
        message = "An error ocurred when contacting Stripe. Your card has not been charged. Please refresh the page and try again. #{token.error.message}"

        form.removeClass('stripe-success')
        form.find('.invalid-feedback').html(message).show()
        alert(message)
      else
        form.find("input[name$='[stripe_token]']").val('' + token['id'])
        form.addClass('stripe-success').submit() # Submits the form. As this is a remote form, submits via JS

# When we click 'Change credit card', make sure the form collects a credit card
$(document).on 'click', ".effective-orders-stripe-update-card[type='submit']", (event) ->
  $form = $(event.currentTarget).closest('form')

  # Get stripe data payload
  stripe = $form.data('stripe')
  return unless stripe?

  # Okay, we're good to call stripe
  event.preventDefault()
  EffectiveForm.submitting($form) # Disable and spin while we popup stripe

  stripeCustomerChangeCardHandler(stripe.key, $form).open
    image: stripe.image
    name: stripe.name
    email: stripe.email
    panelLabel: 'Update Card Details'

Version data entries

216 entries across 216 versions & 1 rubygems

Version Path
effective_orders-6.19.1 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.19.0 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.18.4 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.18.3 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.18.2 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.18.1 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.18.0 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.17.2 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.17.1 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.17.0 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.16.4 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.16.3 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.16.2 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.16.1 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.16.0 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.15.0 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.14.6 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.14.5 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.14.4 app/assets/javascripts/effective_orders/customers.js.coffee
effective_orders-6.14.3 app/assets/javascripts/effective_orders/customers.js.coffee