From 0e7bb43a5a33b031cf8b98f54bc3eb57bb42f0a5 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Mon, 2 Feb 2026 12:32:53 +0100 Subject: [PATCH] Manual payment: Fix using hidden method for existing order (#5850) --- src/pretix/base/payment.py | 4 ++-- src/pretix/presale/views/user.py | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/pretix/base/payment.py b/src/pretix/base/payment.py index 67e54a824..ab1fa0f9f 100644 --- a/src/pretix/base/payment.py +++ b/src/pretix/base/payment.py @@ -1231,8 +1231,8 @@ class ManualPayment(BasePaymentProvider): def is_allowed(self, request: HttpRequest, total: Decimal=None): return 'pretix.plugins.manualpayment' in self.event.plugins and super().is_allowed(request, total) - def order_change_allowed(self, order: Order): - return 'pretix.plugins.manualpayment' in self.event.plugins and super().order_change_allowed(order) + def order_change_allowed(self, order: Order, request=None): + return 'pretix.plugins.manualpayment' in self.event.plugins and super().order_change_allowed(order, request) @property def public_name(self): diff --git a/src/pretix/presale/views/user.py b/src/pretix/presale/views/user.py index 7ff3f4638..b81457a1b 100644 --- a/src/pretix/presale/views/user.py +++ b/src/pretix/presale/views/user.py @@ -97,7 +97,8 @@ class UnlockHashView(EventViewMixin, View): def get(self, request, *args, **kwargs): hashes = request.session.get('pretix_unlock_hashes', []) - hashes.append(kwargs.get('hash')) + if kwargs.get('hash') not in hashes: + hashes.append(kwargs.get('hash')) request.session['pretix_unlock_hashes'] = hashes if 'voucher' in request.GET: