# frozen_string_literal: true class UpdateBadgeIcons < ActiveRecord::Migration[7.0] def change icon_id_replacement = [ ["book-reader", [Badge::Reader], "fa-certificate"], ["file-alt", [Badge::ReadGuidelines], "fa-certificate"], [ "link", [Badge::FirstLink, Badge::PopularLink, Badge::HotLink, Badge::FamousLink], "fa-certificate", ], ["quote-right", [Badge::FirstQuote], "fa-certificate"], ["heart", [Badge::FirstLike, Badge::Welcome], "fa-certificate"], ["flag", [Badge::FirstFlag], "fa-certificate"], [ "share-alt", [Badge::FirstShare, Badge::NiceShare, Badge::GoodShare, Badge::GreatShare], "fa-certificate", ], ["user-edit", [Badge::Autobiographer], "fa-certificate"], ["pen", [Badge::Editor], "fa-certificate"], ["far-edit", [Badge::WikiEditor], "fa-certificate"], ["reply", [Badge::NicePost, Badge::GoodPost, Badge::GreatPost], "fa-certificate"], ["file-signature", [Badge::NiceTopic, Badge::GoodTopic, Badge::GreatTopic], "fa-certificate"], ["at", [Badge::FirstMention], "fa-certificate"], ["smile", [Badge::FirstEmoji], "fa-certificate"], ["cube", [Badge::FirstOnebox], "fa-certificate"], ["envelope", [Badge::FirstReplyByEmail], "fa-certificate"], ["medal", [Badge::NewUserOfTheMonth], "fa-certificate"], ["birthday-cake", [Badge::Anniversary], "far-clock"], ] icon_id_replacement.each do |new_icon, badge_ids, old_icon| execute "UPDATE badges SET icon = '#{new_icon}' WHERE id IN (#{badge_ids.join(",")}) AND icon = '#{old_icon}'" end end end