akkoma/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 15:41:47 +00:00
# Copyright © 2017-2019 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
2017-08-01 15:05:07 +00:00
defmodule Pleroma.Web.OStatus.DeleteHandler do
require Logger
2017-11-19 01:22:07 +00:00
alias Pleroma.Object
alias Pleroma.Web.ActivityPub.ActivityPub
alias Pleroma.Web.XML
2017-08-01 15:05:07 +00:00
2017-11-19 01:22:07 +00:00
def handle_delete(entry, _doc \\ nil) do
2017-08-01 15:05:07 +00:00
with id <- XML.string_from_xpath("//id", entry),
%Object{} = object <- Object.normalize(id),
2019-08-09 20:05:28 +00:00
{:ok, delete} <- ActivityPub.delete(object, local: false) do
delete
2017-08-01 15:05:07 +00:00
end
end
end