discourse/db/migrate/20180813074843_add_component_to_themes.rb

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

35 lines
749 B
Ruby
Raw Normal View History

# frozen_string_literal: true
class AddComponentToThemes < ActiveRecord::Migration[5.2]
def up
add_column :themes, :component, :boolean, null: false, default: false
execute(
"
UPDATE themes
SET component = true, color_scheme_id = NULL, user_selectable = false
WHERE id IN (SELECT child_theme_id FROM child_themes)
",
)
execute(
"
UPDATE site_settings
SET value = -1
WHERE name = 'default_theme_id' AND value::integer IN (SELECT id FROM themes WHERE component)
",
)
execute(
"
DELETE FROM child_themes
WHERE parent_theme_id IN (SELECT id FROM themes WHERE component)
",
)
end
def down
remove_column :themes, :component
end
end