X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Ftwitter_api%2Ftwitter_api.ex;h=1ae076e2430eb5628e08ee9aeb1a329291785cb9;hb=632e1f7943b8736d2f4084bfcb347c448eac7252;hp=dc66e27adba77965769539eed976b15a7daa8cdf;hpb=72ca58c540ee03de50631ea08a419f2589a0fe8e;p=akkoma diff --git a/lib/pleroma/web/twitter_api/twitter_api.ex b/lib/pleroma/web/twitter_api/twitter_api.ex index dc66e27ad..1ae076e24 100644 --- a/lib/pleroma/web/twitter_api/twitter_api.ex +++ b/lib/pleroma/web/twitter_api/twitter_api.ex @@ -265,12 +265,22 @@ defmodule Pleroma.Web.TwitterAPI.TwitterAPI do ActivityRepresenter.to_map(activity, Map.merge(opts, %{users: [user, announced_actor], announced_activity: announced_activity})) end + defp activity_to_status(%Activity{data: %{"type" => "Delete"}} = activity, opts) do + actor = get_in(activity.data, ["actor"]) + user = User.get_cached_by_ap_id(actor) + ActivityRepresenter.to_map(activity, Map.merge(opts, %{user: user})) + end + defp activity_to_status(activity, opts) do actor = get_in(activity.data, ["actor"]) user = User.get_cached_by_ap_id(actor) # mentioned_users = Repo.all(from user in User, where: user.ap_id in ^activity.data["to"]) mentioned_users = Enum.map(activity.data["to"] || [], fn (ap_id) -> - User.get_cached_by_ap_id(ap_id) + if ap_id do + User.get_cached_by_ap_id(ap_id) + else + nil + end end) |> Enum.filter(&(&1))