2025-06-23 11:25:03 -05:00
|
|
|
class UpdateOutdatedTimezones < ActiveRecord::Migration[7.2]
|
|
|
|
TIMEZONE_MAPPINGS = {
|
|
|
|
"Europe/Kiev" => "Europe/Kyiv",
|
|
|
|
"Asia/Calcutta" => "Asia/Kolkata",
|
|
|
|
"Asia/Katmandu" => "Asia/Kathmandu",
|
|
|
|
"Asia/Rangoon" => "Asia/Yangon",
|
|
|
|
"Asia/Saigon" => "Asia/Ho_Chi_Minh",
|
|
|
|
"Pacific/Ponape" => "Pacific/Pohnpei",
|
|
|
|
"Pacific/Truk" => "Pacific/Chuuk"
|
|
|
|
}.freeze
|
|
|
|
|
|
|
|
def up
|
|
|
|
TIMEZONE_MAPPINGS.each do |old_tz, new_tz|
|
|
|
|
execute <<-SQL
|
2025-06-23 11:31:57 -05:00
|
|
|
UPDATE families#{' '}
|
|
|
|
SET timezone = '#{new_tz}'#{' '}
|
2025-06-23 11:25:03 -05:00
|
|
|
WHERE timezone = '#{old_tz}'
|
|
|
|
SQL
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
|
|
|
def down
|
|
|
|
TIMEZONE_MAPPINGS.each do |old_tz, new_tz|
|
|
|
|
execute <<-SQL
|
2025-06-23 11:31:57 -05:00
|
|
|
UPDATE families#{' '}
|
|
|
|
SET timezone = '#{old_tz}'#{' '}
|
2025-06-23 11:25:03 -05:00
|
|
|
WHERE timezone = '#{new_tz}'
|
|
|
|
SQL
|
|
|
|
end
|
|
|
|
end
|
2025-06-23 11:31:57 -05:00
|
|
|
end
|