From a900f39121a5a50160b1d94579ea27d57a7186ad Mon Sep 17 00:00:00 2001 From: Raphael Michel Date: Thu, 25 Feb 2021 12:32:55 +0100 Subject: [PATCH] Check-in list update view: Fix incorrect timezone handling in exit_at_all --- src/pretix/control/forms/checkin.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/src/pretix/control/forms/checkin.py b/src/pretix/control/forms/checkin.py index 16e13555b..5e8bd71cc 100644 --- a/src/pretix/control/forms/checkin.py +++ b/src/pretix/control/forms/checkin.py @@ -28,6 +28,13 @@ class NextTimeField(forms.TimeField): return result +class NextTimeInput(forms.TimeInput): + def format_value(self, value): + if isinstance(value, datetime): + value = value.astimezone(get_current_timezone()).time() + return super().format_value(value) + + class CheckinListForm(forms.ModelForm): def __init__(self, **kwargs): self.event = kwargs.pop('event') @@ -89,7 +96,7 @@ class CheckinListForm(forms.ModelForm): 'class': 'scrolling-multiple-choice' }), 'auto_checkin_sales_channels': forms.CheckboxSelectMultiple(), - 'exit_all_at': forms.TimeInput(attrs={'class': 'timepickerfield'}), + 'exit_all_at': NextTimeInput(attrs={'class': 'timepickerfield'}), } field_classes = { 'limit_products': SafeModelMultipleChoiceField,