From 81c271ee2a20ed5b459962a3a3f76408516c0ba1 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Fri, 28 Jan 2022 17:05:46 +0100 Subject: [PATCH] Fix ordering of add-on products in email info block --- src/pretix/base/email.py | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/src/pretix/base/email.py b/src/pretix/base/email.py index 2019b08d7a..7d0252de78 100644 --- a/src/pretix/base/email.py +++ b/src/pretix/base/email.py @@ -165,9 +165,20 @@ class TemplateBasedMailRenderer(BaseHTMLMailRenderer): has_addons=Count('addons') )) htmlctx['cart'] = [(k, list(v)) for k, v in groupby( - positions, key=lambda op: ( - op.item, op.variation, op.subevent, op.attendee_name, - (op.pk if op.addon_to_id else None), (op.pk if op.has_addons else None) + sorted( + positions, + key=lambda op: ( + (op.addon_to.positionid if op.addon_to_id else op.positionid), + op.positionid + ) + ), + key=lambda op: ( + op.item, + op.variation, + op.subevent, + op.attendee_name, + (op.pk if op.addon_to_id else None), + (op.pk if op.has_addons else None) ) )]