fix: FutureDateTime form field

This commit is contained in:
imperosol 2025-06-27 18:06:56 +02:00
parent 05a55f10e7
commit a8c6cc29f5

View File

@ -39,9 +39,8 @@ from django.forms import (
DateInput, DateInput,
DateTimeInput, DateTimeInput,
TextInput, TextInput,
Widget,
) )
from django.utils.timezone import now from django.utils.timezone import localtime, now
from django.utils.translation import gettext from django.utils.translation import gettext
from django.utils.translation import gettext_lazy as _ from django.utils.translation import gettext_lazy as _
from phonenumber_field.widgets import RegionalPhoneNumberWidget from phonenumber_field.widgets import RegionalPhoneNumberWidget
@ -115,7 +114,7 @@ class SelectUser(TextInput):
def validate_future_timestamp(value: date | datetime): def validate_future_timestamp(value: date | datetime):
if value <= now(): if value <= now():
raise ValueError(_("Ensure this timestamp is set in the future")) raise ValidationError(_("Ensure this timestamp is set in the future"))
class FutureDateTimeField(forms.DateTimeField): class FutureDateTimeField(forms.DateTimeField):
@ -123,8 +122,8 @@ class FutureDateTimeField(forms.DateTimeField):
default_validators = [validate_future_timestamp] default_validators = [validate_future_timestamp]
def widget_attrs(self, widget: Widget) -> dict[str, str]: def widget_attrs(self, widget: forms.Widget) -> dict[str, str]:
return {"min": widget.format_value(now())} return {"min": widget.format_value(localtime())}
# Forms # Forms