205 lines
11 KiB
HTML
205 lines
11 KiB
HTML
{% extends "hosting/base_short.html" %}
|
|
{% load staticfiles bootstrap3 i18n %}
|
|
|
|
{% block css_extra %}
|
|
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/paymentfont/1.1.2/css/paymentfont.min.css"/>
|
|
{% endblock css_extra %}
|
|
|
|
{% block navbar %}
|
|
{% include "datacenterlight/includes/_navbar.html" %}
|
|
{% endblock navbar %}
|
|
|
|
{% block content %}
|
|
<!-- Credit card form -->
|
|
<div class="dcl-order-container">
|
|
<div class="payment-container">
|
|
<div class="dcl-payment-grid">
|
|
<div class="dcl-payment-box">
|
|
<div class="dcl-payment-section">
|
|
<h3>{%trans "Log in" %}</h3>
|
|
<hr class="top-hr">
|
|
<p>{% blocktrans %}Already signed up?<br>By logging in you can retrieve saved billing information.{% endblocktrans %}</p>
|
|
<form role="form" id="login-form" method="post" action="" novalidate>
|
|
{% for field in login_form %}
|
|
{% csrf_token %}
|
|
{% bootstrap_field field show_label=False type='fields'%}
|
|
{% endfor %}
|
|
<div class="text-right">
|
|
<button type="submit" class="btn btn-vm-contact">{% trans "LOGIN" %}</button>
|
|
</div>
|
|
</form>
|
|
<p>
|
|
{% trans "Don't have an account yet?" %}<br>
|
|
{% trans "You can sign up by filling in the information below." %}<br>
|
|
<a href="">{% trans "Forgot password?" %}</a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
<div class="dcl-payment-box">
|
|
<div class="dcl-payment-section">
|
|
<h3>{%trans "Your Order" %}</h3>
|
|
<hr class="top-hr">
|
|
<div class="dcl-payment-order">
|
|
<p>{% trans "Cores"%} <strong class="pull-right">{{vm.cores}}1</strong></p>
|
|
<hr>
|
|
<p>{% trans "Memory"%} <strong class="pull-right">{{vm.memory}}2 GB</strong></p>
|
|
<hr>
|
|
<p>{% trans "Disk space"%} <strong class="pull-right">{{vm.disk_size}}2 GB</strong></p>
|
|
<hr>
|
|
<p>{% trans "Configuration"%} <strong class="pull-right">{{request.session.template.name}}CentOS 7</strong></p>
|
|
<hr>
|
|
<p class="last-p"><strong>{%trans "Total" %}</strong> <small>({%trans "including VAT" %})</small> <strong class="pull-right">{{request.session.specs.price}}15 CHF/{% trans "Month" %}</strong></p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="dcl-payment-box">
|
|
<div class="dcl-payment-section">
|
|
<h3><b>{%trans "Sign up"%}</b></h3>
|
|
<hr class="top-hr">
|
|
<form role="form" id="billing-form" method="post" action="" novalidate>
|
|
<div class="form-group">
|
|
<label class="sr-only" for="id_signup_name">{% trans "Name" %}</label>
|
|
<input type="text" id="id_signup_name" class="form-control" name="signup_name" placeholder="{% trans 'Name' %}">
|
|
</div>
|
|
<div class="form-group">
|
|
<label class="sr-only" for="id_signup_email">{% trans "Email Address" %}</label>
|
|
<input type="email" id="id_signup_email" class="form-control" name="signup_email" placeholder="{% trans 'Email Address' %}">
|
|
</div>
|
|
{% for field in form %}
|
|
{% csrf_token %}
|
|
{% bootstrap_field field show_label=False type='fields'%}
|
|
{% endfor %}
|
|
</form>
|
|
</div>
|
|
</div>
|
|
<div class="dcl-payment-box">
|
|
<div class="dcl-payment-section">
|
|
<h3><b>{%trans "Credit Card"%}</b></h3>
|
|
<hr class="top-hr">
|
|
<div>
|
|
<div>
|
|
<p>
|
|
{% blocktrans %}
|
|
Please fill in your credit card information below. We are using <a
|
|
href="https://stripe.com" target="_blank">Stripe</a> for payment and do not store
|
|
your information in our database.
|
|
{% endblocktrans %}
|
|
</p>
|
|
</div>
|
|
<br>
|
|
<div>
|
|
{% if credit_card_data.last4 %}
|
|
<form role="form" id="payment-form-with-creditcard" novalidate>
|
|
<h5 class="billing-head">Credit Card</h5>
|
|
<h5 class="membership-lead">Last 4: *****{{credit_card_data.last4}}</h5>
|
|
<h5 class="membership-lead">Type: {{credit_card_data.cc_brand}}</h5>
|
|
<input type="hidden" name="credit_card_needed" value="false"/>
|
|
</form>
|
|
{% if not messages and not form.non_field_errors %}
|
|
<p class="card-warning-content card-warning-addtional-margin">
|
|
{% trans "You are not making any payment yet. After submitting your card information, you will be taken to the Confirm Order Page." %}
|
|
</p>
|
|
{% endif %}
|
|
<div id='payment_error'>
|
|
{% for message in messages %}
|
|
{% if 'failed_payment' or 'make_charge_error' in message.tags %}
|
|
<ul class="list-unstyled"><li>
|
|
<p class="card-warning-content card-warning-error">{{ message|safe }}</p>
|
|
</li></ul>
|
|
{% endif %}
|
|
{% endfor %}
|
|
{% for error in form.non_field_errors %}
|
|
<p class="card-warning-content card-warning-error">
|
|
{{ error|escape }}
|
|
</p>
|
|
{% endfor %}
|
|
</div>
|
|
<div class="text-right">
|
|
<button id="payment_button_with_creditcard" class="btn btn-success btn-vm-contact" type="submit">{%trans "Submit" %}</button>
|
|
</div>
|
|
{% else %}
|
|
<form action="" id="payment-form-new" method="POST">
|
|
<input type="hidden" name="token"/>
|
|
<div class="group">
|
|
<div class="credit-card-goup">
|
|
<div class="card-element card-number-element">
|
|
<label>{%trans "Card Number" %}</label>
|
|
<div id="card-number-element" class="field my-input"></div>
|
|
</div>
|
|
<div class="row">
|
|
<div class="col-xs-5 card-element card-expiry-element">
|
|
<label>{%trans "Expiry Date" %}</label>
|
|
<div id="card-expiry-element" class="field my-input"></div>
|
|
</div>
|
|
<div class="col-xs-3 col-xs-offset-4 card-element card-cvc-element">
|
|
<label>{%trans "CVC" %}</label>
|
|
<div id="card-cvc-element" class="field my-input"></div>
|
|
</div>
|
|
</div>
|
|
<div class="card-element brand">
|
|
<label>{%trans "Card Type" %}</label>
|
|
<i class="pf pf-credit-card" id="brand-icon"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div id="card-errors" role="alert"></div>
|
|
{% if not messages and not form.non_field_errors %}
|
|
<p class="card-warning-content">
|
|
{% trans "You are not making any payment yet. After placing your order, you will be taken to the Submit Payment Page." %}
|
|
</p>
|
|
{% endif %}
|
|
<div id='payment_error'>
|
|
{% for message in messages %}
|
|
{% if 'failed_payment' or 'make_charge_error' in message.tags %}
|
|
<ul class="list-unstyled"><li>
|
|
<p class="card-warning-content card-warning-error">{{ message|safe }}</p>
|
|
</li></ul>
|
|
{% endif %}
|
|
{% endfor %}
|
|
|
|
{% for error in form.non_field_errors %}
|
|
<p class="card-warning-content card-warning-error">
|
|
{{ error|escape }}
|
|
</p>
|
|
{% endfor %}
|
|
</div>
|
|
<div class="text-right">
|
|
<button class="btn btn-vm-contact btn-wide" type="submit">{%trans "SUBMIT" %}</button>
|
|
</div>
|
|
|
|
<div style="display:none;">
|
|
<p class="payment-errors"></p>
|
|
</div>
|
|
</form>
|
|
{% endif %}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- stripe key data -->
|
|
{% if stripe_key %}
|
|
{% get_current_language as LANGUAGE_CODE %}
|
|
<script type="text/javascript">
|
|
window.processing_text = '{%trans "Processing" %}';
|
|
window.enter_your_card_text = '{%trans "Enter your credit card number" %}';
|
|
|
|
(function () {
|
|
window.stripeKey = "{{stripe_key}}";
|
|
window.current_lan = "{{LANGUAGE_CODE}}";
|
|
})();
|
|
</script>
|
|
{%endif%}
|
|
|
|
{% if credit_card_data.last4 and credit_card_data.cc_brand %}
|
|
<script type="text/javascript">
|
|
(function () {
|
|
window.hasCreditcard = true;
|
|
})();
|
|
</script>
|
|
{%endif%}
|
|
|
|
{%endblock%}
|