format
[akkoma] / lib / pleroma / web / activity_pub / side_effects.ex
index 39d37fbcb8210e982d43021b02c7325d6f5bdc5a..9b17eba953382a2d5d9c215900b4fab8d07240b7 100644 (file)
@@ -538,6 +538,24 @@ defmodule Pleroma.Web.ActivityPub.SideEffects do
   end
 
   @impl true
+  def handle_after_transaction(%Pleroma.Activity{data: %{"type" => "Create"}} = activity) do
+    Pleroma.Elasticsearch.put_by_id(:activity, activity.id)
+  end
+
+  def handle_after_transaction(%Pleroma.Activity{
+        data: %{"type" => "Delete", "deleted_activity_id" => id}
+      }) do
+    Pleroma.Elasticsearch.delete_by_id(:activity, id)
+  end
+
+  def handle_after_transaction(%Pleroma.Activity{}) do
+    :ok
+  end
+
+  def handle_after_transaction(%Pleroma.Object{}) do
+    :ok
+  end
+
   def handle_after_transaction(meta) do
     meta
     |> send_notifications()