Sha256: 29a472bb9bf22d78e5ac3490bc3037b8431d27ec4c867efa819882eda0f0523f

Contents?: true

Size: 1000 Bytes

Versions: 8

Compression:

Stored size: 1000 Bytes

Contents

class ActivitiesToVersions < ActiveRecord::Migration[4.2]
  def up
    events = {
      'created'     => 'create',
      'viewed'      => 'view',
      'updated'     => 'update',
      'deleted'     => 'destroy',
      'rejected'    => 'reject',
      'won'         => 'won',
      'completed'   => 'complete',
      'reassigned'  => 'reassign',
      'rescheduled' => 'reschedule'
    }

    activities = connection.select_all 'SELECT * FROM activities'
    activities.each do |activity|
      # commented and email activities don't translate well so ignore them
      if event = events[activity['action']]
        attributes = {
          item_id: activity['subject_id'],
          item_type: activity['subject_type'],
          whodunnit: activity['user_id'],
          event: event,
          created_at: activity['created_at']
        }
        version = Version.new
        attributes.each { |k, v| version.send("#{k}=", v) }
        version.save!
      end
    end
  end

  def down
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
fat_free_crm-0.15.2 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.16.4 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.15.1 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.16.3 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.16.2 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.16.1 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.16.0 db/migrate/20120316045804_activities_to_versions.rb
fat_free_crm-0.15.0 db/migrate/20120316045804_activities_to_versions.rb