Module: Sequel::Plugins::Auditer::ClassMethods

Defined in:
lib/sequel/plugins/auditer.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#auditer_additional_info_methodObject

Returns the value of attribute auditer_additional_info_method.



147
148
149
# File 'lib/sequel/plugins/auditer.rb', line 147

def auditer_additional_info_method
  @auditer_additional_info_method
end

#auditer_current_user_methodObject

Returns the value of attribute auditer_current_user_method.



147
148
149
# File 'lib/sequel/plugins/auditer.rb', line 147

def auditer_current_user_method
  @auditer_current_user_method
end

#auditer_default_ignored_columnsObject

Returns the value of attribute auditer_default_ignored_columns.



147
148
149
# File 'lib/sequel/plugins/auditer.rb', line 147

def auditer_default_ignored_columns
  @auditer_default_ignored_columns
end

#auditer_ignored_columnsObject (readonly)

The holder of ignored columns



149
150
151
# File 'lib/sequel/plugins/auditer.rb', line 149

def auditer_ignored_columns
  @auditer_ignored_columns
end

#auditer_included_columnsObject (readonly)

The holder of columns that should be audited



151
152
153
# File 'lib/sequel/plugins/auditer.rb', line 151

def auditer_included_columns
  @auditer_included_columns
end

#auditer_reference_methodObject

Returns the value of attribute auditer_reference_method.



153
154
155
# File 'lib/sequel/plugins/auditer.rb', line 153

def auditer_reference_method
  @auditer_reference_method
end

#auditer_resource_owner_fieldObject

Returns the value of attribute auditer_resource_owner_field.



147
148
149
# File 'lib/sequel/plugins/auditer.rb', line 147

def auditer_resource_owner_field
  @auditer_resource_owner_field
end

Instance Method Details

#auditer_columnsObject



168
169
170
# File 'lib/sequel/plugins/auditer.rb', line 168

def auditer_columns
  @auditer_columns ||= columns - @auditer_ignored_columns
end

#auditer_versions(opts = {}) ⇒ Object

grab all audits for a particular model based upon filters

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

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

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

Posts.auditer_versions(:created_at > Date.today - 7)
  #=> filtered to older than last seven (7) days


203
204
205
# File 'lib/sequel/plugins/auditer.rb', line 203

def auditer_versions(opts = {})
  audit_model.where(opts.merge(associated_type: name.to_s)).order(:version).all
end

#auditer_versions?Boolean

returns true / false if any audits have been made

Post.auditer_versions?   #=> true / false

Returns:

  • (Boolean)


185
186
187
# File 'lib/sequel/plugins/auditer.rb', line 185

def auditer_versions?
  audit_model.where(associated_type: name.to_s).count >= 1
end

#non_audited_columnsObject



164
165
166
# File 'lib/sequel/plugins/auditer.rb', line 164

def non_audited_columns
  columns - auditer_columns
end