Module: Changes::RecordChanges::Base::InstanceMethods

Defined in:
lib/record_changes/base.rb

Instance Method Summary collapse

Instance Method Details

#identify_changesObject



27
28
29
30
31
# File 'lib/record_changes/base.rb', line 27

def identify_changes
  unless self.new_record? && self.changed.empty?
    self.resource_changes.create(:log_changed => self.changed.to_json, :log_changes => self.changes.to_json)
  end
end

#show_changes(options = {}) ⇒ Object



33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# File 'lib/record_changes/base.rb', line 33

def show_changes(options={})
  all_changes = []
  self.resource_changes.order('created_at').each do |change|
    log = ""
    log_changed = JSON.parse(change.log_changed)
    log_changes = JSON.parse(change.log_changes)
    
    log_changed.each do |c|
      from = log_changes[c].first
      to = log_changes[c].last
      log << "#{c} from '#{from}' to '#{to}'\n"
    end
    all_changes << log
  end
  all_changes
end