Revert "Simplify query."
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index 7a15661563368482806da836f73e8f14c2500c73..31aa2c4f127798be671ffc9c4ba4ce204c2afdcb 100644 (file)
@@ -118,8 +118,11 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
   defp restrict_tag(query, _), do: query
 
   defp restrict_recipients(query, recipients) do
-    from activity in query,
-      where: fragment("?->'to' \\\?| ? ", activity.data, ^recipients)
+    Enum.reduce(recipients, query, fn (recipient, q) ->
+      map = %{ to: [recipient] }
+      from activity in q,
+      or_where: fragment(~s(? @> ?), activity.data, ^map)
+    end)
   end
 
   defp restrict_local(query, %{"local_only" => true}) do