middleware: Set the correct options on the django_language cookie.

Signed-off-by: Anders Kaseorg <anders@zulip.com>
This commit is contained in:
Anders Kaseorg
2022-11-03 13:19:00 -07:00
committed by Tim Abbott
parent 53df35e698
commit 70dbeb197f
2 changed files with 15 additions and 2 deletions

View File

@@ -550,7 +550,16 @@ class LocaleMiddleware(DjangoLocaleMiddleware):
# and saved in the set_language flag so that it can be used here.
set_language = RequestNotes.get_notes(request).set_language
if set_language is not None:
response.set_cookie(settings.LANGUAGE_COOKIE_NAME, set_language)
response.set_cookie(
settings.LANGUAGE_COOKIE_NAME,
set_language,
max_age=settings.LANGUAGE_COOKIE_AGE,
path=settings.LANGUAGE_COOKIE_PATH,
domain=settings.LANGUAGE_COOKIE_DOMAIN,
secure=settings.LANGUAGE_COOKIE_SECURE,
httponly=settings.LANGUAGE_COOKIE_HTTPONLY, # type: ignore[misc] # https://github.com/typeddjango/django-stubs/pull/1228
samesite=settings.LANGUAGE_COOKIE_SAMESITE,
)
return response