summaryrefslogtreecommitdiff
path: root/priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs
diff options
context:
space:
mode:
authormarcin mikołajczak <git@mkljczk.pl>2024-07-28 13:41:58 +0200
committermarcin mikołajczak <git@mkljczk.pl>2024-07-28 13:41:58 +0200
commitad8c26f6c285412be041b7dcaeefa8741d3a6e57 (patch)
tree041e9af5f9b64215f12d195d6c98b548b0c1b622 /priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs
parent7620b520c13a1c204810cf0cfe6a7b70b9a1c59d (diff)
parent6876761837bad399758cd6a93be5bf5cc8a81cef (diff)
downloadpleroma-ad8c26f6c285412be041b7dcaeefa8741d3a6e57.tar.gz
pleroma-ad8c26f6c285412be041b7dcaeefa8741d3a6e57.zip
Merge remote-tracking branch 'origin/develop' into post-languages
Diffstat (limited to 'priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs')
-rw-r--r--priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs51
1 files changed, 51 insertions, 0 deletions
diff --git a/priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs b/priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs
new file mode 100644
index 000000000..c3bc85894
--- /dev/null
+++ b/priv/repo/migrations/20220319000000_add_status_to_notifications_enum.exs
@@ -0,0 +1,51 @@
+defmodule Pleroma.Repo.Migrations.AddStatusToNotificationsEnum do
+ use Ecto.Migration
+
+ @disable_ddl_transaction true
+
+ def up do
+ """
+ alter type notification_type add value 'status'
+ """
+ |> execute()
+ end
+
+ def down do
+ alter table(:notifications) do
+ modify(:type, :string)
+ end
+
+ """
+ delete from notifications where type = 'status'
+ """
+ |> execute()
+
+ """
+ drop type if exists notification_type
+ """
+ |> execute()
+
+ """
+ create type notification_type as enum (
+ 'follow',
+ 'follow_request',
+ 'mention',
+ 'move',
+ 'pleroma:emoji_reaction',
+ 'pleroma:chat_mention',
+ 'reblog',
+ 'favourite',
+ 'pleroma:report',
+ 'poll',
+ 'update'
+ )
+ """
+ |> execute()
+
+ """
+ alter table notifications
+ alter column type type notification_type using (type::notification_type)
+ """
+ |> execute()
+ end
+end