diff --git a/src/agenda_culturel/filters.py b/src/agenda_culturel/filters.py index 5ca2786..31ad8ba 100644 --- a/src/agenda_culturel/filters.py +++ b/src/agenda_culturel/filters.py @@ -142,6 +142,13 @@ class EventFilter(django_filters.FilterSet): p = self.get_cleaned_data("position") if not isinstance(d, str) or not isinstance(p, ReferenceLocation): return parent + try: + d = float(d) + except ValueError: + return parent + if d <= 0: + return parent + p = p.location return parent.exclude(exact_location=False).filter(exact_location__location__distance_lt=(p, D(km=d)))