diff options
author | lain <lain@soykaf.club> | 2020-04-24 16:32:13 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-04-24 16:32:13 +0000 |
commit | c30b3b2dc5c6da037ae72b6cb537898a78cd53bc (patch) | |
tree | 3f9233539c314b2c95dcdc086b8e7dcffe8d837e /lib/pleroma/web/common_api | |
parent | d862c7156a1edcdc89425143901f140bc0b1f5eb (diff) | |
parent | d89cd0a19733eec27b79b768df2e30a68bfc6d6b (diff) | |
download | pleroma-c30b3b2dc5c6da037ae72b6cb537898a78cd53bc.tar.gz |
Merge branch 'reply-filtering-refactor' into 'develop'
Reply filtering refactor
See merge request pleroma/pleroma!2424
Diffstat (limited to 'lib/pleroma/web/common_api')
-rw-r--r-- | lib/pleroma/web/common_api/activity_draft.ex | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/lib/pleroma/web/common_api/activity_draft.ex b/lib/pleroma/web/common_api/activity_draft.ex index c1cd15bb2..244cf2be5 100644 --- a/lib/pleroma/web/common_api/activity_draft.ex +++ b/lib/pleroma/web/common_api/activity_draft.ex @@ -84,14 +84,18 @@ defmodule Pleroma.Web.CommonAPI.ActivityDraft do %__MODULE__{draft | attachments: attachments} end - defp in_reply_to(draft) do - case Map.get(draft.params, "in_reply_to_status_id") do - "" -> draft - nil -> draft - id -> %__MODULE__{draft | in_reply_to: Activity.get_by_id(id)} - end + defp in_reply_to(%{params: %{"in_reply_to_status_id" => ""}} = draft), do: draft + + defp in_reply_to(%{params: %{"in_reply_to_status_id" => id}} = draft) when is_binary(id) do + %__MODULE__{draft | in_reply_to: Activity.get_by_id(id)} end + defp in_reply_to(%{params: %{"in_reply_to_status_id" => %Activity{} = in_reply_to}} = draft) do + %__MODULE__{draft | in_reply_to: in_reply_to} + end + + defp in_reply_to(draft), do: draft + defp in_reply_to_conversation(draft) do in_reply_to_conversation = Participation.get(draft.params["in_reply_to_conversation_id"]) %__MODULE__{draft | in_reply_to_conversation: in_reply_to_conversation} |