24 lines
707 B
Ruby
24 lines
707 B
Ruby
|
# frozen_string_literal: true
|
||
|
|
||
|
class ConfirmSupportBotUser < ActiveRecord::Migration[6.0]
|
||
|
SUPPORT_BOT_TYPE = 1
|
||
|
|
||
|
def up
|
||
|
users = Arel::Table.new(:users)
|
||
|
um = Arel::UpdateManager.new
|
||
|
um.table(users)
|
||
|
.where(users[:user_type].eq(SUPPORT_BOT_TYPE))
|
||
|
.where(users[:confirmed_at].eq(nil))
|
||
|
.set([[users[:confirmed_at], Arel::Nodes::NamedFunction.new('COALESCE', [users[:created_at], Arel::Nodes::SqlLiteral.new('NOW()')])]])
|
||
|
connection.execute(um.to_sql)
|
||
|
end
|
||
|
|
||
|
def down
|
||
|
# no op
|
||
|
|
||
|
# The up migration allows for the possibility that the support user might
|
||
|
# have already been manually confirmed. It's not reversible as this data is
|
||
|
# subsequently lost.
|
||
|
end
|
||
|
end
|