Sha256: 148def5fe8fc432652dc4113fcfd86ea8dcbb08cfe7f60732056119c7f7b0de8
Contents?: true
Size: 1.2 KB
Versions: 1
Compression:
Stored size: 1.2 KB
Contents
module LogBook::Plugin def self.included(base) base.send :extend, ClassMethods base.send :include, InstanceMethods end module ClassMethods def log_book after_create :log_book_event_on_create after_update :log_book_event_on_update after_destroy :log_book_event_on_destroy attr_accessor :log_book_historian end end module InstanceMethods def log_book_event_on_create LogBook.created(self.log_book_historian, self) end def log_book_event_on_update LogBook.updated(self.log_book_historian, self) end def log_book_event_on_destroy LogBook.destroyed(self.log_book_historian, self) end def pretty_changes result = self.previous_changes.reject { |k,v| k == "updated_at" || k =~ /password/ || k == "perishable_token" || k == "persistence_token" }.map do |k,v| old_value = v[0] new_value = v[1] old_value = old_value.to_s( :localdb ) if old_value.instance_of? ActiveSupport::TimeWithZone new_value = new_value.to_s( :localdb ) if new_value.instance_of? ActiveSupport::TimeWithZone "#{k}[#{old_value} -> #{new_value}]" end.join( ", " ) result end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
log_book-0.0.1 | lib/log_book/plugin.rb |