pleroma/lib/pleroma/web/ostatus/handlers/delete_handler.ex

19 lines
565 B
Elixir
Raw Normal View History

# Pleroma: A lightweight social networking server
2018-12-31 16:41:47 +01:00
# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
2017-08-01 17:05:07 +02:00
defmodule Pleroma.Web.OStatus.DeleteHandler do
require Logger
2017-11-19 02:22:07 +01:00
alias Pleroma.Object
alias Pleroma.Web.ActivityPub.ActivityPub
alias Pleroma.Web.XML
2017-08-01 17:05:07 +02:00
2017-11-19 02:22:07 +01:00
def handle_delete(entry, _doc \\ nil) do
2017-08-01 17:05:07 +02:00
with id <- XML.string_from_xpath("//id", entry),
%Object{} = object <- Object.normalize(id),
{:ok, delete} <- ActivityPub.delete(object, local: false) do
delete
2017-08-01 17:05:07 +02:00
end
end
end