module Sequel::Plugins::Audited::ClassMethods

Attributes

audited_current_user_method[RW]
audited_default_ignored_columns[RW]
audited_ignored_columns[R]

The holder of ignored columns

audited_included_columns[R]

The holder of columns that should be audited

audited_reference_method[RW]

Public Instance Methods

audited_columns() click to toggle source
# File lib/sequel/plugins/audited.rb, line 144
def audited_columns
  @audited_columns ||= columns - @audited_ignored_columns
end
audited_versions(opts = {}) click to toggle source

grab all audits for a particular model based upon filters

Posts.audited_versions(:model_pk => 123)
  #=> filtered by primary_key value

Posts.audited_versions(:user_id => 88)
  #=> filtered by user name

Posts.audited_versions(:created_at < Date.today - 2)
  #=> filtered to last two (2) days only

Posts.audited_versions(:created_at > Date.today - 7)
  #=> filtered to older than last seven (7) days
# File lib/sequel/plugins/audited.rb, line 179
def audited_versions(opts = {})
  audit_model.where(opts.merge(associated_type: name.to_s)).order(:version).all
end
audited_versions?() click to toggle source

returns true / false if any audits have been made

Post.audited_versions?   #=> true / false
# File lib/sequel/plugins/audited.rb, line 161
def audited_versions?
  audit_model.where(associated_type: name.to_s).count >= 1
end
non_audited_columns() click to toggle source
# File lib/sequel/plugins/audited.rb, line 140
def non_audited_columns
  columns - audited_columns
end

Private Instance Methods

audit_model() click to toggle source
# File lib/sequel/plugins/audited.rb, line 187
def audit_model
  const_get(audit_model_name)
end
audit_model_name() click to toggle source
# File lib/sequel/plugins/audited.rb, line 191
def audit_model_name
  ::Sequel::Audited.audited_model_name
end
set_default_ignored_columns(opts) click to toggle source
# File lib/sequel/plugins/audited.rb, line 195
def set_default_ignored_columns(opts)
  if opts[:default_ignored_columns]
    @audited_default_ignored_columns = opts[:default_ignored_columns]
  else
    @audited_default_ignored_columns = ::Sequel::Audited.audited_default_ignored_columns
  end
end
set_reference_method(opts) click to toggle source
# File lib/sequel/plugins/audited.rb, line 211
def set_reference_method(opts)
  if opts[:reference_method]
    @audited_reference_method = opts[:reference_method]
  end
end
set_user_method(opts) click to toggle source
# File lib/sequel/plugins/audited.rb, line 203
def set_user_method(opts)
  if opts[:user_method]
    @audited_current_user_method = opts[:user_method]
  else
    @audited_current_user_method = ::Sequel::Audited.audited_current_user_method
  end
end