Documentation: Add warning about database mix tasks.
[akkoma] / lib / pleroma / notification.ex
index 21b26a53d7b894369a446ebc1d0ee31a2a49d111..b7ecf51e4681fc9a25b8d1cd9d596c928f930bba 100644 (file)
@@ -55,9 +55,19 @@ defmodule Pleroma.Notification do
     )
     |> preload([n, a, o], activity: {a, object: o})
     |> exclude_muted(user, opts)
+    |> exclude_blocked(user)
     |> exclude_visibility(opts)
   end
 
+  defp exclude_blocked(query, user) do
+    query
+    |> where([n, a], a.actor not in ^user.blocks)
+    |> where(
+      [n, a],
+      fragment("substring(? from '.*://([^/]*)')", a.actor) not in ^user.domain_blocks
+    )
+  end
+
   defp exclude_muted(query, _, %{with_muted: true}) do
     query
   end
@@ -65,11 +75,6 @@ defmodule Pleroma.Notification do
   defp exclude_muted(query, user, _opts) do
     query
     |> where([n, a], a.actor not in ^user.muted_notifications)
-    |> where([n, a], a.actor not in ^user.blocks)
-    |> where(
-      [n, a],
-      fragment("substring(? from '.*://([^/]*)')", a.actor) not in ^user.domain_blocks
-    )
     |> join(:left, [n, a], tm in Pleroma.ThreadMute,
       on: tm.user_id == ^user.id and tm.context == fragment("?->>'context'", a.data)
     )