class TrustyCms::ExtensionMigrator

def assume_migrated_upto_version(version)

def assume_migrated_upto_version(version)
  version = version.to_i
  sm_table = self.class.schema_migrations_table_name
  migrated = self.class.get_all_versions
  versions = Dir["#{@migrations_path}/[0-9]*_*.rb"].map do |filename|
    filename.split('/').last.split('_').first.to_i
  end
  unless migrated.include?(version)
    ActiveRecord::Base.connection.execute "INSERT INTO #{sm_table} (version) VALUES (#{quote(version_string(version))})"
  end
  inserted = Set.new
  (versions - migrated).each do |v|
    if inserted.include?(v)
      raise "Duplicate migration #{v}. Please renumber your migrations to resolve the conflict."
    elsif v < version
      ActiveRecord::Base.connection.execute "INSERT INTO #{sm_table} (version) VALUES (#{quote(version_string(v))})"
      inserted << v
    end
  end
end