From 003bfb707d412dbd1d04f68c6ccdb50304467ddf Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Wed, 22 Jul 2026 14:10:34 +0200 Subject: [PATCH] Fix scoping for OrderPosition.objects (follow-up to #4278) (#6407) --- src/pretix/base/models/orders.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/src/pretix/base/models/orders.py b/src/pretix/base/models/orders.py index 626e85868..dc2b3df7e 100644 --- a/src/pretix/base/models/orders.py +++ b/src/pretix/base/models/orders.py @@ -2286,9 +2286,12 @@ class OrderRefund(models.Model): super().save(*args, **kwargs) -class ActivePositionManager(ScopedManager(organizer='order__event__organizer').__class__): - def get_queryset(self): - return super().get_queryset().filter(canceled=False) +def ActivePositionManager(**scope): + class InnerClass(ScopedManager(**scope).__class__): + def get_queryset(self): + return super().get_queryset().filter(canceled=False) + + return InnerClass() class OrderFee(RoundingCorrectionMixin, models.Model): @@ -2378,7 +2381,7 @@ class OrderFee(RoundingCorrectionMixin, models.Model): canceled = models.BooleanField(default=False) all = ScopedManager(organizer='order__event__organizer') - objects = ActivePositionManager() + objects = ActivePositionManager(organizer='order__event__organizer') @property def net_value(self): @@ -2597,7 +2600,7 @@ class OrderPosition(AbstractPosition): ) all = ScopedManager(organizer='organizer') - objects = ActivePositionManager() + objects = ActivePositionManager(organizer='organizer') def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs)