43 lines
1.5 KiB
Elixir
43 lines
1.5 KiB
Elixir
defmodule Pleroma.Repo.Migrations.UsersUpdateNotificationSettings do
|
|
use Ecto.Migration
|
|
|
|
def up do
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'followers' || jsonb_build_object('from_followers', notification_settings->'followers')
|
|
where notification_settings ? 'followers'
|
|
and local"
|
|
)
|
|
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'follows' || jsonb_build_object('from_following', notification_settings->'follows')
|
|
where notification_settings ? 'follows'
|
|
and local"
|
|
)
|
|
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'non_followers' || jsonb_build_object('from_strangers', notification_settings->'non_followers')
|
|
where notification_settings ? 'non_followers'
|
|
and local"
|
|
)
|
|
end
|
|
|
|
def down do
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'from_followers' || jsonb_build_object('followers', notification_settings->'from_followers')
|
|
where notification_settings ? 'from_followers'
|
|
and local"
|
|
)
|
|
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'from_following' || jsonb_build_object('follows', notification_settings->'from_following')
|
|
where notification_settings ? 'from_following'
|
|
and local"
|
|
)
|
|
|
|
execute(
|
|
"UPDATE users SET notification_settings = notification_settings - 'from_strangers' || jsonb_build_object('non_follows', notification_settings->'from_strangers')
|
|
where notification_settings ? 'from_strangers'
|
|
and local"
|
|
)
|
|
end
|
|
end
|