Fix ordering of add-on products in email info block

This commit is contained in:
Raphael Michel
2022-01-28 17:05:46 +01:00
parent e981f00dc7
commit 81c271ee2a

View File

@@ -165,9 +165,20 @@ class TemplateBasedMailRenderer(BaseHTMLMailRenderer):
has_addons=Count('addons') has_addons=Count('addons')
)) ))
htmlctx['cart'] = [(k, list(v)) for k, v in groupby( htmlctx['cart'] = [(k, list(v)) for k, v in groupby(
positions, key=lambda op: ( sorted(
op.item, op.variation, op.subevent, op.attendee_name, positions,
(op.pk if op.addon_to_id else None), (op.pk if op.has_addons else None) 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)
) )
)] )]