diff options
author | ThibG <thib@sitedethib.com> | 2019-07-23 17:21:55 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-07-23 17:21:55 +0200 |
commit | 08325db62bcc4d5d530513c615bc1c733f166239 (patch) | |
tree | 13cffcc0c8d6ed258928a89c1b328a055c54f2d3 /app/controllers/concerns/localized.rb | |
parent | 6db5669818cce459b9bb916665541b7b8f5d5155 (diff) | |
parent | 48c68eafb73d2e697dab25ec55c235da4daf1cf8 (diff) |
Merge pull request #1174 from ThibG/glitch-soc/merge-upstream
Merge upstream changes
Diffstat (limited to 'app/controllers/concerns/localized.rb')
-rw-r--r-- | app/controllers/concerns/localized.rb | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/app/controllers/concerns/localized.rb b/app/controllers/concerns/localized.rb index 145549bcd..b43859d9d 100644 --- a/app/controllers/concerns/localized.rb +++ b/app/controllers/concerns/localized.rb @@ -4,16 +4,19 @@ module Localized extend ActiveSupport::Concern included do - before_action :set_locale + around_action :set_locale end private def set_locale - I18n.locale = default_locale - I18n.locale = current_user.locale if user_signed_in? - rescue I18n::InvalidLocale - I18n.locale = default_locale + locale = current_user.locale if respond_to?(:user_signed_in?) && user_signed_in? + locale ||= session[:locale] ||= default_locale + locale = default_locale unless I18n.available_locales.include?(locale.to_sym) + + I18n.with_locale(locale) do + yield + end end def default_locale |