diff --git a/program/filters.py b/program/filters.py index d32554aaee756fa1afb3d4cf8189a36ecc5cdfa9..a212a42ca0919c65250752d3a56c9374cbb75a17 100644 --- a/program/filters.py +++ b/program/filters.py @@ -184,22 +184,13 @@ class TimeSlotFilterSet(filters.FilterSet): "If specified without a datetime value the current date and time is assumed." ), ) - # The start/end filters will always be applied even if no query parameter has been set. - # This is because we enforce a value in the clean_start and clean_end methods - # of the filterset form. start = filters.DateFilter( method="filter_start", - help_text=( - "Only returns timeslots after that start on or after the specified date. " - "By default, this is set to the current date." - ), + help_text="Only returns timeslots that start at or after the specified datetime.", ) end = filters.DateFilter( method="filter_end", - help_text=( - "Only returns timeslots that end on or before the specified date. " - "By default, this is set to value of the start filter + 60 days." - ), + help_text="Only returns timeslots that end before the specified datetime.", ) schedule_ids = IntegerInFilter( @@ -242,26 +233,6 @@ class TimeSlotFilterSet(filters.FilterSet): queryset = self.filter_surrounding(queryset, "surrounding", timezone.now()) return queryset - def get_form_class(self): - form_cls = super().get_form_class() - - class TimeSlotFilterSetFormWithDefaults(form_cls): - def clean_start(self): - start = self.cleaned_data.get("start", None) - return start or timezone.now().date() - - def clean_end(self): - end = self.cleaned_data.get("end", None) - return end or self.cleaned_data["start"] + datetime.timedelta(days=60) - - # We only want defaults to apply in the context of the list action. - # When accessing individual timeslots we don’t want the queryset to be restricted - # to the default range of 60 days as get_object would yield a 404 otherwise. - if self.request.parser_context["view"].action == "list": - return TimeSlotFilterSetFormWithDefaults - else: - return form_cls - class Meta: model = models.TimeSlot fields = [