diff --git a/src/pretix/base/models/items.py b/src/pretix/base/models/items.py index c552df6221..9dbf9037f6 100644 --- a/src/pretix/base/models/items.py +++ b/src/pretix/base/models/items.py @@ -1680,10 +1680,11 @@ class Question(LoggedModel): choices=FieldType.choices, verbose_name=_("Question type") ) - #required = models.BooleanField( # TODO(questionnaires) : to be removed, -> QuestionnaireChild - # default=False, - # verbose_name=_("Required question") - #) + tbd_required = models.BooleanField( # TODO(questionnaires) : to be removed, -> QuestionnaireChild + default=False, + verbose_name=_("Required question"), + db_column="required", + ) #items = models.ManyToManyField( # TODO(questionnaires) : to be removed, -> Questionnaire # Item, # related_name='questions', @@ -1691,15 +1692,17 @@ class Question(LoggedModel): # blank=True, # help_text=_('This question will be asked to buyers of the selected products') #) - #position = models.PositiveIntegerField( # TODO(questionnaires) : to be removed, -> Questionnaire + QuestionnaireChild - # default=0, - # verbose_name=_("Position") - #) - #ask_during_checkin = models.BooleanField( # TODO(questionnaires) : to be removed - # verbose_name=_('Ask during check-in instead of in the ticket buying process'), - # help_text=_('Not supported by all check-in apps for all question types.'), - # default=False - #) + tbd_position = models.PositiveIntegerField( # TODO(questionnaires) : to be removed, -> Questionnaire + QuestionnaireChild + default=0, + verbose_name=_("Position"), + db_column="position", + ) + tbd_ask_during_checkin = models.BooleanField( # TODO(questionnaires) : to be removed + verbose_name=_('Ask during check-in instead of in the ticket buying process'), + help_text=_('Not supported by all check-in apps for all question types.'), + default=False, + db_column="ask_during_checkin", + ) show_during_checkin = models.BooleanField( verbose_name=_('Show answer during check-in'), help_text=_('Not supported by all check-in apps for all question types.'), diff --git a/src/pretix/base/models/orders.py b/src/pretix/base/models/orders.py index 51127972cd..57232a0519 100644 --- a/src/pretix/base/models/orders.py +++ b/src/pretix/base/models/orders.py @@ -918,7 +918,7 @@ class Order(LockModel, LoggedModel): positions = list( self.positions.all().annotate( has_checkin=Exists(Checkin.objects.filter(position_id=OuterRef('pk'), list__consider_tickets_used=True)) - ).select_related('item').prefetch_related('item__questions') + ).select_related('item').prefetch_related('item__questionnaires') ) if not self.event.settings.allow_modifications_after_checkin: for cp in positions: @@ -929,7 +929,7 @@ class Order(LockModel, LoggedModel): return True ask_names = self.event.settings.get('attendee_names_asked', as_type=bool) for cp in positions: - if (cp.item.ask_attendee_data and ask_names) or cp.item.questions.all(): + if (cp.item.ask_attendee_data and ask_names) or cp.item.questionnaires.all(): # TODO(questionnaires) : filter to only QuestionnaireType.ORDER_POSITION_SALE return True return False # nothing there to modify @@ -2780,7 +2780,7 @@ class OrderPosition(AbstractPosition): positions = list( self.order.positions.all().annotate( has_checkin=Exists(Checkin.objects.filter(position_id=OuterRef('pk'), list__consider_tickets_used=True)) - ).select_related('item').prefetch_related('item__questions') + ).select_related('item').prefetch_related('item__questionnaires') ) if not self.event.settings.allow_modifications_after_checkin: for cp in positions: @@ -2790,7 +2790,7 @@ class OrderPosition(AbstractPosition): ask_names = self.event.settings.get('attendee_names_asked', as_type=bool) for cp in positions: if cp.pk == self.pk or cp.addon_to_id == self.pk: - if (cp.item.ask_attendee_data and ask_names) or cp.item.questions.all(): + if (cp.item.ask_attendee_data and ask_names) or cp.item.questionnaires.all(): # TODO(questionnaires) : filter to only QuestionnaireType.ORDER_POSITION_SALE return True return False # nothing there to modify diff --git a/src/pretix/control/templates/pretixcontrol/items/question_delete.html b/src/pretix/control/templates/pretixcontrol/items/question_delete.html index 2dfa98a021..c902e017f5 100644 --- a/src/pretix/control/templates/pretixcontrol/items/question_delete.html +++ b/src/pretix/control/templates/pretixcontrol/items/question_delete.html @@ -6,7 +6,7 @@