forked from CGM_Public/pretix_original
Fix #957 -- Integrate BezahlCode and GiroCode
This commit is contained in:
@@ -19,6 +19,7 @@ class BankTransferApp(AppConfig):
|
||||
def ready(self):
|
||||
from . import signals # NOQA
|
||||
from . import tasks # NOQA
|
||||
from .templatetags import commadecimal # NOQA
|
||||
|
||||
@cached_property
|
||||
def compatibility_warnings(self):
|
||||
|
||||
@@ -175,6 +175,7 @@ class BankTransfer(BasePaymentProvider):
|
||||
'event': self.event,
|
||||
'code': self._code(payment.order),
|
||||
'order': payment.order,
|
||||
'amount': payment.amount,
|
||||
'settings': self.settings,
|
||||
'details': self.settings.get('bank_details', as_type=LazyI18nString),
|
||||
}
|
||||
|
||||
@@ -1,21 +1,59 @@
|
||||
{% load i18n %}
|
||||
{% load l10n %}
|
||||
{% load commadecimal %}
|
||||
{% load money %}
|
||||
|
||||
<p>{% blocktrans trimmed %}
|
||||
Please transfer the full amount to the following bank account:
|
||||
{% endblocktrans %}</p>
|
||||
|
||||
<address>
|
||||
<div class="row">
|
||||
<div class="{% if settings.bank_details_type == "sepa" %}col-md-6{% else %}col-md-12{% endif %} col-xs-12">
|
||||
<p>
|
||||
{% if settings.bank_details_type == "sepa" %}
|
||||
<strong>{% trans "Account holder" %}:</strong> {{ settings.bank_details_sepa_name }}<br>
|
||||
<strong>{% trans "IBAN" %}:</strong> {{ settings.bank_details_sepa_iban }}<br>
|
||||
<strong>{% trans "BIC" %}:</strong> {{ settings.bank_details_sepa_bic }}<br>
|
||||
<strong>{% trans "Bank" %}:</strong> {{ settings.bank_details_sepa_bank }}<br>
|
||||
{% endif %}
|
||||
{% if details %}
|
||||
{{ details|linebreaksbr }}<br>
|
||||
{% endif %}
|
||||
<strong>{% trans "Amount:" %}</strong> {{ amount|money:event.currency }}<br/>
|
||||
<strong>{% trans "Reference code (important):" %} {{ code }}</strong>
|
||||
</p>
|
||||
</div>
|
||||
{% if settings.bank_details_type == "sepa" %}
|
||||
<strong>{% trans "Account holder" %}:</strong> {{ settings.bank_details_sepa_name }}<br>
|
||||
<strong>{% trans "IBAN" %}:</strong> {{ settings.bank_details_sepa_iban }}<br>
|
||||
<strong>{% trans "BIC" %}:</strong> {{ settings.bank_details_sepa_bic }}<br>
|
||||
<strong>{% trans "Bank" %}:</strong> {{ settings.bank_details_sepa_bank }}<br>
|
||||
<div class="col-md-3 col-sm-6 hidden-xs text-center">
|
||||
BezahlCode<br>
|
||||
<a href="bank://singlepaymentsepa?name={{ settings.bank_details_sepa_name|urlencode }}&iban={{ settings.bank_details_sepa_iban }}&bic={{ settings.bank_details_sepa_bic }}&amount={{ order.total|commadecimal }}&reason={{ code }}¤cy={{ event.currency }}">
|
||||
<script type="text/plain" data-size="150" data-replace-with-qr>bank://singlepaymentsepa?name={{ settings.bank_details_sepa_name|urlencode }}&iban={{ settings.bank_details_sepa_iban }}&bic={{ settings.bank_details_sepa_bic }}&amount={{ amount|commadecimal }}&reason={{ code }}¤cy={{ event.currency }}</script>
|
||||
</a>
|
||||
<p> </p>
|
||||
</div>
|
||||
<div class="col-md-3 col-sm-6 hidden-xs text-center">
|
||||
GiroCode / EPC-QR<br>
|
||||
<script type="text/plain" data-size="150" data-replace-with-qr>BCD
|
||||
002
|
||||
2
|
||||
SCT
|
||||
{{ settings.bank_details_sepa_bic }}
|
||||
{{ settings.bank_details_sepa_name }}
|
||||
{{ settings.bank_details_sepa_iban }}
|
||||
{{ event.currency }}{{ amount|floatformat:2 }}
|
||||
|
||||
|
||||
{{ code }}
|
||||
|
||||
</script>
|
||||
</div>
|
||||
<div class="visible-xs-block text-center">
|
||||
<p>
|
||||
<a href="bank://singlepaymentsepa?name={{ settings.bank_details_sepa_name|urlencode }}&iban={{ settings.bank_details_sepa_iban }}&bic={{ settings.bank_details_sepa_bic }}&amount={{ order.total|commadecimal }}&reason={{ code }}¤cy={{ event.currency }}" class="btn btn-default">
|
||||
{% trans "Open banking app" %}
|
||||
</a><br>
|
||||
<small>{% trans "Requires that the app supports BezahlCode" %}</small>
|
||||
</p>
|
||||
</div>
|
||||
{% endif %}
|
||||
{% if details %}
|
||||
{{ details|linebreaksbr }}<br>
|
||||
{% endif %}
|
||||
<strong>{% trans "Amount:" %}</strong> {{ order.total|money:event.currency }}<br />
|
||||
<strong>{% trans "Reference code (important):" %} {{ code }}</strong>
|
||||
</address>
|
||||
</div>
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
from django import template
|
||||
|
||||
register = template.Library()
|
||||
|
||||
|
||||
@register.filter
|
||||
def commadecimal(value):
|
||||
return str(value).replace(".", ",")
|
||||
@@ -24,6 +24,7 @@
|
||||
<script type="text/javascript" src="{% static "js/jquery.formset.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "bootstrap/js/bootstrap.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "datetimepicker/bootstrap-datetimepicker.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "pretixcontrol/js/jquery.qrcode.min.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "pretixpresale/js/ui/main.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "pretixbase/js/asynctask.js" %}"></script>
|
||||
<script type="text/javascript" src="{% static "pretixbase/js/asyncdownload.js" %}"></script>
|
||||
|
||||
@@ -374,7 +374,10 @@ var form_handlers = function (el) {
|
||||
$div.insertBefore($(this));
|
||||
$div.qrcode(
|
||||
{
|
||||
text: $(this).html()
|
||||
text: $(this).html(),
|
||||
correctLevel: 0, // M
|
||||
width: $(this).attr("data-size") ? parseInt($(this).attr("data-size")) : 256,
|
||||
height: $(this).attr("data-size") ? parseInt($(this).attr("data-size")) : 256,
|
||||
}
|
||||
);
|
||||
});
|
||||
|
||||
@@ -91,6 +91,19 @@ var form_handlers = function (el) {
|
||||
};
|
||||
$(this).datetimepicker(opts);
|
||||
});
|
||||
|
||||
el.find("script[data-replace-with-qr]").each(function () {
|
||||
var $div = $("<div>");
|
||||
$div.insertBefore($(this));
|
||||
$div.qrcode(
|
||||
{
|
||||
text: $(this).html(),
|
||||
correctLevel: 0, // M
|
||||
width: $(this).attr("data-size") ? parseInt($(this).attr("data-size")) : 256,
|
||||
height: $(this).attr("data-size") ? parseInt($(this).attr("data-size")) : 256,
|
||||
}
|
||||
);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user