NW
a8bf50df24
feat: add i18n localization system (en/es/de) with admin panel
- Add i18n module with tForUser/tForLang/t functions and {{param}} interpolation
- Add 3 locale files: en.json, es.json, de.json (201 keys each)
- Add language selection on /start and /language command with flag emojis
- Localize all bot user-facing strings (handlers, keyboards, errors)
- Localize messageRouter keyboard matching via locale keys
- Add DB migrations 008 (language column) and 009 (language_set column)
- Add localization admin tab at /locales for editing translations
- Add userService.getUserLanguage/setUserLanguage methods
- Cache user object on msg.__user to avoid triple DB fetch
- Idempotent migrations with checkColumnExists guards
- Error boundary on i18n locale file loading
- Admin locales route uses AVAILABLE_LANGUAGES import
2026-06-25 21:22:32 +01:00
..
2026-06-17 21:52:49 +01:00
2026-06-25 21:22:32 +01:00
2026-06-25 21:22:32 +01:00
2026-06-24 15:05:44 +01:00
2026-06-25 21:22:32 +01:00
2026-06-25 21:22:32 +01:00
2026-06-22 10:07:58 +01:00
2026-06-25 21:22:32 +01:00
2026-06-17 22:10:34 +01:00
2026-06-25 21:22:32 +01:00
2026-06-25 21:22:32 +01:00
2026-06-24 20:45:39 +01:00
2026-06-25 21:22:32 +01:00