Kdyby/Translator: jazyk přihlášeného uživatele
- j.salak
- Člen | 42
Jak můžu vyřešit situaci, že mám přihlášeného uživatele, který má v databázi uložen svůj preferovaný jazyk a potřeboval bych tento jazyk předat do translatoru. Dělat to v presenteru je už pozdě, protože aktuální jazyk používám již ve službách pro výběr správných tabulek.
Díky za informaci
- David Matějka
- Moderator | 6445
implementuj si locale resolver, viz existujici pro inspiraci
vypada to, ze registrace se pak provede takto:
myLocaleResolver: Foo\Bar\MyLocaleResolver
translation.userLocaleResolver:
setup:
- addResolver(@myLocaleResolver)
Editoval matej21 (15. 10. 2014 16:23)
- j.salak
- Člen | 42
Ta registrace se mi nějak nedaří. Dle dalších diskuzí jsem našel, že by se mělo dát registrovat vlastní resolver mezi ostatními resolvery v configu
translation:
default: en
whitelist: [en, cs]
resolvers:
user: Kdyby\Translation\LocaleResolver\LocaleUserResolver
request: off
header: on
session: on
ale nezaregistruje ho to
Editoval j.salak (15. 10. 2014 17:21)
- Filip Procházka
- Moderator | 4668
Já bych si udělal User::onLogin
listener, který mi vytáhne
z uživatele jazyk a nastaví ho do SessionResolveru
.
- David Matějka
- Moderator | 6445
No prave ze jsem koukal do kodu a to, co pises, podporovane neni. Imho by to moje melo fungovat. Hlasi to nejakou chybu?