logo

pleroma

My custom branche(s) on git.pleroma.social/pleroma/pleroma

delete_handler.ex (565B)


      1 # Pleroma: A lightweight social networking server
      2 # Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
      3 # SPDX-License-Identifier: AGPL-3.0-only
      4 
      5 defmodule Pleroma.Web.OStatus.DeleteHandler do
      6   require Logger
      7   alias Pleroma.Object
      8   alias Pleroma.Web.ActivityPub.ActivityPub
      9   alias Pleroma.Web.XML
     10 
     11   def handle_delete(entry, _doc \\ nil) do
     12     with id <- XML.string_from_xpath("//id", entry),
     13          %Object{} = object <- Object.normalize(id),
     14          {:ok, delete} <- ActivityPub.delete(object, local: false) do
     15       delete
     16     end
     17   end
     18 end