module Sequel::Plugins::HasPaperTrail::PaperTrailHelpers

rubocop:disable Style/Documentation

Public Class Methods

create_version(model, attrs) click to toggle source
# File lib/sequel/plugins/has_paper_trail.rb, line 102
def self.create_version(model, attrs)
  default_attrs = {
    item_type: model.paper_trail_item_class_name.to_s,
    whodunnit: SequelPaperTrail.whodunnit,
    created_at: Time.now.utc.iso8601,
    transaction_id: nil
  }

  create_attrs = default_attrs
                 .merge(SequelPaperTrail.info_for_paper_trail)
                 .merge(attrs)

  version_class(model.paper_trail_version_class_name).create(create_attrs)
end

Private Class Methods

version_class(class_name) click to toggle source
# File lib/sequel/plugins/has_paper_trail.rb, line 119
def self.version_class(class_name)
  if class_name.is_a?(String)
    Kernel.const_get(class_name)
  else
    class_name
  end
end