--- /dev/null
+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