From c3745e792bc233adb820fe095df2feb0cd57e90f Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Wed, 22 Jul 2020 16:09:57 +0200 Subject: [PATCH] Fix PaymentProviderForm issue --- src/pretix/base/payment.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pretix/base/payment.py b/src/pretix/base/payment.py index 4e5e45d84..9ea4e1f61 100644 --- a/src/pretix/base/payment.py +++ b/src/pretix/base/payment.py @@ -49,6 +49,7 @@ class PaymentProviderForm(Form): val = cleaned_data.get(k) if v._required and not val: self.add_error(k, _('This field is required.')) + return cleaned_data class BasePaymentProvider: @@ -374,6 +375,8 @@ class BasePaymentProvider: """ return {} + payment_form_class = PaymentProviderForm + def payment_form(self, request: HttpRequest) -> Form: """ This is called by the default implementation of :py:meth:`payment_form_render` @@ -386,7 +389,7 @@ class BasePaymentProvider: ``PaymentProviderForm`` (from this module) that handles some nasty issues about required fields for you. """ - form = PaymentProviderForm( + form = self.payment_form_class( data=(request.POST if request.method == 'POST' and request.POST.get("payment") == self.identifier else None), prefix='payment_%s' % self.identifier, initial={