diff --git a/src/pretix/control/views/orders.py b/src/pretix/control/views/orders.py index 5919d9d7e..356c4fb3e 100644 --- a/src/pretix/control/views/orders.py +++ b/src/pretix/control/views/orders.py @@ -140,8 +140,8 @@ class OrderDetail(OrderView): def keyfunc(pos): if (pos.item.admission and self.request.event.settings.attendee_names_asked) \ or pos.item.questions.all(): - return pos.id, 0, 0, 0, 0, None - return 0, pos.item_id, pos.variation_id, pos.price, pos.tax_rate, pos.voucher + return pos.id, 0, 0, 0, 0, 0 + return 0, pos.item_id, pos.variation_id, pos.price, pos.tax_rate, (pos.voucher_id or 0) positions = [] for k, g in groupby(sorted(list(cartpos), key=keyfunc), key=keyfunc): diff --git a/src/pretix/presale/views/__init__.py b/src/pretix/presale/views/__init__.py index 8ad0dc397..73a9af3e0 100644 --- a/src/pretix/presale/views/__init__.py +++ b/src/pretix/presale/views/__init__.py @@ -48,8 +48,8 @@ class CartMixin: def keyfunc(pos): if answers and ((pos.item.admission and self.request.event.settings.attendee_names_asked) or pos.item.questions.all()): - return pos.id, 0, 0, 0, None - return 0, pos.item_id, pos.variation_id, pos.price, pos.voucher + return pos.id, 0, 0, 0, 0 + return 0, pos.item_id, pos.variation_id, pos.price, (pos.voucher_id or 0) positions = [] for k, g in groupby(sorted(list(cartpos), key=keyfunc), key=keyfunc):