Files @ b052f8870c03
Branch filter:

Location: CopyleftConf/copyleftconf-website/pinaxcon/templates/registrasion/stripe/credit_card_payment.html

Christopher Neugebauer
Pulls out the dashboard widget
{% extends "site_base.html" %}
{% load bootstrap %}
{% load registrasion_tags %}

{% block scripts %}
  {{ block.super }}

  {{ }}

  <script type="text/javascript">
    $(function() {
      var $form = $('#payment-form');
      $form.submit(function(event) {

        if ($form.find("input[name='stripe_token']").length) {
          // If we've added the stripe token, then we're good to go.
          return true;

        // Disable the submit button to prevent repeated clicks:

        $form.find('input[type=submit]').prop('disabled', true);


        // Request a token from Stripe:
        Stripe.card.createToken($form, stripeResponseHandler);

        // Prevent the form from being submitted:
        return false;

    function stripeResponseHandler(status, response) {
      // Grab the form:
      var $form = $('#payment-form');
      var $submit = $form.find('input[type=submit]')
      if (response.error) { // Problem!

        // Show the errors on the form:
        $submit.prop('disabled', false); // Re-enable submission

      } else { // Token was created!

        // Get the token ID:
        var token =;

        // Insert the token ID into the form so it gets submitted to the server:
        $form = $form.append($('<input type="hidden" name="stripe_token" />').val(token));

        // Submit the form:

        $form.append($('<p>').text("Processing your payment. Please do not refresh."));

{% endblock %}

{% block body %}

  <h2>Credit card payment for invoice #{{}}</h2>

  <p>You have ${{ invoice.balance_due }} remaining to pay on this invoice.</p>

  <p>Credit card payments are processed by <a href="">Stripe</a>.
    We do not store any of your credit card data locally, but instead Strip will securely tokenise your card details. To allow this, you must allow JavaScript from <code></code>.</p>

  <h3>Card details</h3>

  <form id="payment-form" method="post">

    <div class="alert alert-danger" id="payment-errors-outer" style="display: none;">
      <a class="close" data-dismiss="alert">×</a>
      <span id="payment-errors"></span>

    {% csrf_token %}
    <input id="pay" class="btn btn-primary" type="submit" value="Pay {{ invoice.balance_due }}" />
{% endblock %}