discourse/db/migrate/20140710224658_add_is_quote_to_topic_links.rb
2014-07-11 14:17:43 +10:00

24 lines
629 B
Ruby

class AddIsQuoteToTopicLinks < ActiveRecord::Migration
def up
add_column :topic_links, :quote, :boolean, default: false, null: false
# a primitive backfill, eventual rebake will catch missing
execute "
UPDATE topic_links
SET quote = true
WHERE id IN (
SELECT l.id
FROM topic_links l
JOIN posts p ON p.id = l.post_id
JOIN posts lp ON l.link_post_id = lp.id
WHERE p.raw LIKE '%\[quote=%post:' ||
lp.post_number::varchar || ',%topic:' ||
lp.topic_id::varchar || '%\]%\[/quote]%'
)"
end
def down
remove_column :topic_links, :quote
end
end