Files
service-finder/backend/app/core/context.py
2026-06-04 07:26:22 +00:00

31 lines
954 B
Python

# /opt/docker/dev/service_finder/backend/app/core/context.py
"""
Context management for request-scoped variables, particularly locale/language.
Uses contextvars to store the current request's locale for i18n purposes.
"""
import contextvars
from typing import Optional
# Context variable to store the current request's locale
# Default value is "hu" (Hungarian) as per project requirements
current_locale: contextvars.ContextVar[str] = contextvars.ContextVar(
"current_locale", default="hu"
)
def get_current_locale() -> str:
"""
Get the current locale from the context.
Returns the default "hu" if not set.
"""
return current_locale.get()
def set_current_locale(locale: str) -> None:
"""
Set the current locale in the context.
Should be called by middleware or other request processors.
"""
current_locale.set(locale)
# Alias for convenience
get_locale = get_current_locale
set_locale = set_current_locale