Sha256: cf46589aab4b6bf372749b19b89effba000d1ab4b355c68546c7b55449056cef

Contents?: true

Size: 748 Bytes

Versions: 1

Compression:

Stored size: 748 Bytes

Contents

module LocaleSetter
  module Controller
    def self.included(controller)
      controller.before_filter :set_locale
    end

    def default_url_options(options = {})
      if i18n.locale == i18n.default_locale
        options
      else
        {LocaleSetter.config.url_param => i18n.locale}.merge(options)
      end
    end

    def set_locale
      Generic.set_locale(
        i18n,
        {:params => params,
         :user   => locale_user,
         :domain => request.domain,
         :env    => request.env}
      )
    end

    def locale_user
      current_user_method = LocaleSetter.config.current_user_method.to_sym
      send(current_user_method) if respond_to?(current_user_method)
    end

    def i18n
      I18n
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
locale_setter-0.4.0 lib/locale_setter/controller.rb