Sha256: ff1ce03c449da8dee617616967743293c66e990728ed2e04ac67aa60d63d912f

Contents?: true

Size: 1.16 KB

Versions: 4

Compression:

Stored size: 1.16 KB

Contents

require 'active_record-framing'

require 'deleted_at/version'
require 'deleted_at/relation'
require 'deleted_at/core'
require 'deleted_at/table_definition'
require 'deleted_at/railtie' if defined?(Rails::Railtie)

module DeletedAt

  MissingColumnError = Class.new(StandardError)

  DEFAULT_OPTIONS = {
    column: :deleted_at,
    proc: -> { Time.now.utc }
  }

  class << self
    attr_writer :logger
    attr_reader :disabled

    def logger
      @logger ||= Logger.new($stdout).tap do |log|
        log.progname = self.name
        log.level = Logger::INFO
      end
    end
  end

  @disabled = false

  def self.disabled?
    @disabled == true
  end

  def self.disable
    @disabled = true
  end

  def self.enable
    @disabled = false
  end

  def self.gemspec
    @gemspec ||= eval(`gem spec deleted_at --ruby`).freeze
  end

  def self.install(model)
    logger.warn <<~STR
      Great news! You're using the new and improved version of DeletedAt. No more table renaming.
      You'll want to migrate your old models to use the new (non-view based) functionality.
      Follow the instructions at #{gemspec.homepage}.
    STR
  end

  def self.uninstall(model)

  end

end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
deleted_at-0.6.0.pre.7 lib/deleted_at.rb
deleted_at-0.6.0.pre.6 lib/deleted_at.rb
deleted_at-0.6.0.pre.5 lib/deleted_at.rb
deleted_at-0.6.0.pre.4 lib/deleted_at.rb