2017-08-31 12:06:56 +08:00
|
|
|
class MigrateAutoClosePosts < ActiveRecord::Migration[4.2]
|
2015-07-30 00:20:35 +08:00
|
|
|
def up
|
2015-11-20 05:36:59 +08:00
|
|
|
I18n.overrides_disabled do
|
2015-11-15 05:11:22 +08:00
|
|
|
strings = []
|
|
|
|
%w(days hours lastpost_days lastpost_hours lastpost_minutes).map do |k|
|
|
|
|
strings << I18n.t("topic_statuses.autoclosed_enabled_#{k}.one")
|
|
|
|
strings << I18n.t("topic_statuses.autoclosed_enabled_#{k}.other").sub("%{count}", "\\d+")
|
|
|
|
end
|
2015-07-30 00:20:35 +08:00
|
|
|
|
2015-11-15 05:11:22 +08:00
|
|
|
sql = "UPDATE posts SET action_code = 'autoclosed.enabled', post_type = 3 "
|
|
|
|
sql << "WHERE post_type = 2 AND ("
|
2017-07-28 09:20:09 +08:00
|
|
|
sql << strings.map { |s| "raw ~* #{ActiveRecord::Base.connection.quote(s)}" }.join(' OR ')
|
2015-11-15 05:11:22 +08:00
|
|
|
sql << ")"
|
2015-07-30 00:20:35 +08:00
|
|
|
|
2015-11-15 05:11:22 +08:00
|
|
|
execute sql
|
|
|
|
end
|
2015-07-30 00:20:35 +08:00
|
|
|
end
|
|
|
|
end
|