class TrustyCms::ExtensionMigrator
def initialize_received_migrations
def initialize_received_migrations if donors = self.class.extension.migrates_from donors.each do |extension_name, until_migration| replaced = ActiveRecord::Base.connection.select_values("SELECT version FROM #{ActiveRecord::Migrator.schema_migrations_table_name} WHERE version LIKE '#{extension_name}-%'").map{|v| v.sub(/^#{extension_name}\-/, '').to_i} replaced.delete_if{|v| v > until_migration.to_i} if until_migration assume_migrated_upto_version(replaced.max) if replaced.any? end end end