From 2a0748a008c4a089472281d824ea9635abe2e234 Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Thu, 24 Mar 2022 17:04:23 +0100 Subject: [PATCH] Questions step: Only prefill customer name for first ticket (#2555) --- src/pretix/base/views/mixins.py | 6 +++--- src/pretix/presale/checkoutflow.py | 4 ++-- src/pretix/presale/views/order.py | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/pretix/base/views/mixins.py b/src/pretix/base/views/mixins.py index 0dbca1412..65e11b547 100644 --- a/src/pretix/base/views/mixins.py +++ b/src/pretix/base/views/mixins.py @@ -58,7 +58,7 @@ class BaseQuestionsViewMixin: def _positions_for_questions(self): raise NotImplementedError() - def get_question_override_sets(self, position): + def get_question_override_sets(self, position, index): return [] def question_form_kwargs(self, cr): @@ -72,7 +72,7 @@ class BaseQuestionsViewMixin: submitted at once. """ formlist = [] - for cr in self._positions_for_questions: + for idx, cr in enumerate(self._positions_for_questions): cartpos = cr if isinstance(cr, CartPosition) else None orderpos = cr if isinstance(cr, OrderPosition) else None @@ -96,7 +96,7 @@ class BaseQuestionsViewMixin: )) ) - override_sets = self.get_question_override_sets(cr) + override_sets = self.get_question_override_sets(cr, idx) for overrides in override_sets: for question_name, question_field in form.fields.items(): if hasattr(question_field, 'question'): diff --git a/src/pretix/presale/checkoutflow.py b/src/pretix/presale/checkoutflow.py index 406756999..784ed4895 100644 --- a/src/pretix/presale/checkoutflow.py +++ b/src/pretix/presale/checkoutflow.py @@ -735,9 +735,9 @@ class QuestionsStep(QuestionsViewMixin, CartMixin, TemplateFlowStep): return f - def get_question_override_sets(self, cart_position): + def get_question_override_sets(self, cart_position, index): o = [] - if self.cart_customer: + if self.cart_customer and index == 0: o.append({ 'attendee_name_parts': { 'initial': self.cart_customer.name_parts diff --git a/src/pretix/presale/views/order.py b/src/pretix/presale/views/order.py index 683acaff6..4e149fca6 100644 --- a/src/pretix/presale/views/order.py +++ b/src/pretix/presale/views/order.py @@ -729,7 +729,7 @@ class OrderModify(EventViewMixin, OrderDetailMixin, OrderQuestionsViewMixin, Tem return [] return super().positions - def get_question_override_sets(self, order_position): + def get_question_override_sets(self, order_position, index): override_sets = [ resp for recv, resp in question_form_fields_overrides.send( self.request.event,