Sha256: 4b40fd2bb771fac6729abfdfcdab5b9d8ed75f557ffcacb6fdb242b8543abd0c

Contents?: true

Size: 942 Bytes

Versions: 4

Compression:

Stored size: 942 Bytes

Contents

require 'singleton'

module PaperTrailScrapbook
  # Global configuration affecting all threads.
  class Config
    include Singleton

    DEFAULT_TIME_FORMAT = '%A, %d %b %Y at %l:%M %p'.freeze
    DEFAULT_EVENTS      = { 'create'  => 'created',
                            'update'  => 'updated',
                            'destroy' => 'destroyed' }.freeze

    SCRUB_COLUMNS     = %w(updated_at created_at id).freeze
    UNKNOWN_WHODUNNIT = '*the app*'.freeze

    attr_accessor :whodunnit_class,
                  :time_format,
                  :events,
                  :scrub_columns,
                  :drop_id_suffix,
                  :unknown_whodunnit

    def initialize
      @whodunnit_class   = nil
      @time_format       = DEFAULT_TIME_FORMAT
      @events            = DEFAULT_EVENTS
      @scrub_columns     = SCRUB_COLUMNS
      @unknown_whodunnit = UNKNOWN_WHODUNNIT
      @drop_id_suffix    = true
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
paper_trail_scrapbook-0.1.3 lib/paper_trail_scrapbook/config.rb
paper_trail_scrapbook-0.1.2 lib/paper_trail_scrapbook/config.rb
paper_trail_scrapbook-0.1.1 lib/paper_trail_scrapbook/config.rb
paper_trail_scrapbook-0.1.0 lib/paper_trail_scrapbook/config.rb