Variable default interface language for new users

This is also incorrect. I18n.locale is set from the header only if there is no logged in user. See here:

Now, I suspect that when the user first signs up, current_user is not set, thus kick-starting the whole get-the-language-from-header process, and then the I18n.locale got persisted into the user’s account.

However, this is certain NOT how it is done when a user redeems an invite.

1 „Gefällt mir“

Yes, if you look at users_controller you can see how it’s done differently.

3 „Gefällt mir“

Yup. I see it.

UsersController inherits from ApplicationController, which runs set_locale as a before_action.

That kick-starts the whole thing.

But users redeeming an invitation does not go through this.

2 „Gefällt mir“

Judging from this here:

Would this work:

      user = invite.redeem(username: params[:username], name: params[:name], password: params[:password], user_custom_fields: params[:user_custom_fields])
      if user.present?
        user.locale = I18n.locale
        user.save!

        log_on_user(user)
        post_process_invite(user)
      end

Sorry for my Ruby – I don’t really know it. :sweat_smile:

1 „Gefällt mir“

Mit diesem Commit von @david sollte das jetzt einwandfrei funktionieren :tada:

1 „Gefällt mir“

Vielen Dank, Leute.
Aber… ich habe noch ein anderes Problem.:pensive_face:
Ich weiß nicht, wie man das benutzt.:persevering_face:

Damit die Spracheinstellung für anonyme (nicht angemeldete) Benutzer basierend auf den Spracheinstellungen ihres Browsers festgelegt werden kann, müssen sowohl die Site-Einstellung „Benutzersprache zulassen

2 „Gefällt mir“

Schnelle Frage dazu in Bezug auf das Übersetzer-Plugin. Funktioniert das Übersetzer-Plugin in diesem Szenario, wenn die Plugin-Übersetzungsbeschränkung auf „Jeder“ gesetzt ist?
image
(da die unterschiedliche Locale die Sache ist, die den Übersetzungsbutton überhaupt erst erscheinen lässt)

Nur zur Information, ich glaube nicht, dass die Gruppe ‘Jeder’ mit dieser Übersetzer-Einstellung richtig funktioniert. Sie ist auch für anonyme Benutzer nicht verfügbar, daher wird die Einstellung auf TL0 als empfohlene Gruppe dafür empfohlen.

1 „Gefällt mir“