shaheerawan3's picture
Create utils/localization.py
0898792 verified
from typing import Dict
import json
import os
class LocalizationManager:
def __init__(self):
self.translations = self._load_translations()
self.current_language = 'en'
def _load_translations(self) -> Dict[str, Dict[str, str]]:
translations = {}
translations_dir = os.path.join(os.path.dirname(__file__), '../translations')
for filename in os.listdir(translations_dir):
if filename.endswith('.json'):
language = filename.split('.')[0]
with open(os.path.join(translations_dir, filename)) as f:
translations[language] = json.load(f)
return translations
def get_text(self, key: str, language: str = None) -> str:
lang = language or self.current_language
try:
return self.translations[lang][key]
except KeyError:
return self.translations['en'][key]
def set_language(self, language: str):
if language in self.translations:
self.current_language = language
# Initialize localization
localization = LocalizationManager()