Event list: fix parsing of date query parameter (#5047)

Use the same localization formats as used when generating the value
This commit is contained in:
luelista
2025-05-02 10:22:04 +02:00
committed by GitHub
parent 1e4c577b31
commit d926030bf6
3 changed files with 20 additions and 20 deletions

View File

@@ -23,7 +23,9 @@ import gettext as gettext_module
import json
import os
import re
from datetime import datetime
from functools import lru_cache
from typing import Optional
from django.apps import apps
from django.conf import settings
@@ -222,3 +224,15 @@ def get_language_score(locale):
else:
score = len(list(catalog.items())) or 1
return score
def parse_date_localized(date_str) -> Optional[datetime]:
"""Parses a date according to the localized date input formats. Returns None if invalid."""
dt = None
for f in get_format('DATE_INPUT_FORMATS'):
try:
dt = datetime.strptime(date_str, f)
break
except (ValueError, TypeError):
continue
return dt