Sha256: 7e98ba11eb457e29fe096bbd2bb4c4e57eab77dfca0b376ac058e9a4113264f4

Contents?: true

Size: 1.13 KB

Versions: 6

Compression:

Stored size: 1.13 KB

Contents

require "rails/engine"

module Clearance
  # Makes Clearance behavior available to Rails apps on initialization. By using
  # a Rails Engine rather than a Railtie, Clearance can automatically expose its
  # own routes and views to the hosting application.
  #
  # Requiring `clearance` (likely by having it in your `Gemfile`) will
  # automatically require the engine. You can opt-out of Clearance's internal
  # routes by using {Configuration#routes=}. You can override the Clearance
  # views by running `rails generate clearance:views`.
  #
  # In addition to providing routes and views, the Clearance engine:
  #
  # * Ensures `password` and `token` parameters are filtered out of Rails logs.
  # * Mounts the {RackSession} middleware in the appropriate location
  # * Reloads classes referenced in your {Configuration} on every request in
  #   development mode.
  #
  class Engine < Rails::Engine
    initializer "clearance.filter" do |app|
      app.config.filter_parameters += [:password, :token]
    end

    config.app_middleware.use(Clearance::RackSession)

    config.to_prepare do
      Clearance.configuration.reload_user_model
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
clearance-2.9.3 lib/clearance/engine.rb
clearance-2.9.2 lib/clearance/engine.rb
clearance-2.9.1 lib/clearance/engine.rb
clearance-2.9.0 lib/clearance/engine.rb
clearance-2.8.0 lib/clearance/engine.rb
clearance-2.7.2 lib/clearance/engine.rb