[FIX] translate: lang detection fallback actually falls back

For instance, when a context was passed to a method, but no lang was defined in the context, it did not tried to fallback to other places where we could have find the user language.