module PaperTrailScrapbook::VersionHelpers

Module VersionHelpers provides methods for extracting common information from a version or PaperTrailScrapbook config

Public Instance Methods

changes() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 25
def changes
  Changes.new(version).change_log
end
config() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 29
def config
  PaperTrailScrapbook.config
end
create?() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 17
def create?
  event.eql?('create')
end
destroy?() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 21
def destroy?
  event.eql?('destroy')
end
kind() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 37
def kind
  config.events[event] ||
    raise(ArgumentError, "incorrect event:#{event}")
end
model() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 9
def model
  version.item_type
end
model_id() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 13
def model_id
  version.item_id
end
whenn() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 33
def whenn
  version.created_at.strftime(config.time_format)
end
who() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 42
def who
  author = version.version_author
  return config.unknown_whodunnit unless author
  return author unless whodunnit_class

  whodunnit_instance(author)
end
whodunnit_class() click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 50
def whodunnit_class
  config.whodunnit_class
end
whodunnit_instance(author) click to toggle source
# File lib/paper_trail_scrapbook/version_helpers.rb, line 54
def whodunnit_instance(author)
  instance = begin
               whodunnit_class.find(author)
             rescue StandardError
               config.invalid_whodunnit.call(author)
             end

  return instance.to_whodunnit if instance.respond_to?(:to_whodunnit)

  instance.to_s
end