def locale=(value)
      if value
        config = I18n.config.respond_to?(:original_config) ? I18n.config.original_config : I18n.config
        config.locale = value
      end

      super(default_locale)
    end
def locale=(value)
      if value
        config = I18n.config.respond_to?(:original_config) ? I18n.config.original_config : I18n.config
        config.locale = value
      end

      super(default_locale)
    end
Overload locale= to also set the I18n.locale. If the current I18n.config object responds
 to original_config, it means that it has a copy of the original I18n configuration and it's
 acting as proxy, which we need to skip.