Module: Logga::ActiveRecord
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/logga/active_record.rb
Constant Summary collapse
- EXCLUDED_KEYS =
%i[id created_at deleted_at initial updated_at log sent_after_sales_emails].freeze
- EXCLUDED_KEYS_SUFFIXES =
%i[_id _filenames].freeze
Instance Method Summary collapse
- #log_field_changes(changes) ⇒ Object
- #log_model_changes ⇒ Object
- #log_model_creation ⇒ Object
- #log_model_deletion ⇒ Object
Instance Method Details
#log_field_changes(changes) ⇒ Object
29 30 31 32 33 34 |
# File 'lib/logga/active_record.rb', line 29 def log_field_changes(changes) return if changes.blank? body = (changes) create_log_entry(.merge(body: body)) if body.present? end |
#log_model_changes ⇒ Object
52 53 54 55 56 57 |
# File 'lib/logga/active_record.rb', line 52 def log_model_changes return if should_not_log? field_changes = previous_changes.reject { |k, _| reject_change?(k) } log_field_changes(field_changes) end |
#log_model_creation ⇒ Object
36 37 38 39 40 41 42 |
# File 'lib/logga/active_record.rb', line 36 def log_model_creation return if should_not_log? body_generator = ->(record) { default_creation_log_body(record) } body = log_fields.fetch(:created_at, body_generator).call(self) create_log_entry(.merge(body: body, created_at: creation_at)) end |
#log_model_deletion ⇒ Object
44 45 46 47 48 49 50 |
# File 'lib/logga/active_record.rb', line 44 def log_model_deletion return if should_not_log? body_generator = ->(record) { default_deletion_log_body(record) } body = log_fields.fetch(:deleted_at, body_generator).call(self) create_log_entry(.merge(body: body)) end |