X-Git-Url: https://git.squeep.com/?a=blobdiff_plain;f=lib%2Fpleroma%2Fweb%2Fcommon_api%2Factivity_draft.ex;h=ea88213fbdae41c28149857b92c2846bb4d088ef;hb=cf0ad02ea961ae8cb6cc4f960afaeead58ecd4af;hp=c691d71d28ff6ca32db11abad6dc71d7813a31a6;hpb=e56c319e8f4c121c5a3c014ac0b2e3567bfa636b;p=akkoma diff --git a/lib/pleroma/web/common_api/activity_draft.ex b/lib/pleroma/web/common_api/activity_draft.ex index c691d71d2..ea88213fb 100644 --- a/lib/pleroma/web/common_api/activity_draft.ex +++ b/lib/pleroma/web/common_api/activity_draft.ex @@ -6,6 +6,7 @@ defmodule Pleroma.Web.CommonAPI.ActivityDraft do alias Pleroma.Activity alias Pleroma.Conversation.Participation alias Pleroma.Object + alias Pleroma.Web.ActivityPub.Builder alias Pleroma.Web.CommonAPI alias Pleroma.Web.CommonAPI.Utils @@ -63,30 +64,6 @@ defmodule Pleroma.Web.CommonAPI.ActivityDraft do |> validate() end - def listen(user, params) do - user - |> new(params) - |> visibility() - |> to_and_cc() - |> context() - |> listen_object() - |> with_valid(&changes/1) - |> validate() - end - - defp listen_object(draft) do - object = - draft.params - |> Map.take([:album, :artist, :title, :length]) - |> Map.new(fn {key, value} -> {to_string(key), value} end) - |> Map.put("type", "Audio") - |> Map.put("to", draft.to) - |> Map.put("cc", draft.cc) - |> Map.put("actor", draft.user.ap_id) - - %__MODULE__{draft | object: object} - end - defp put_params(draft, params) do params = Map.put_new(params, :in_reply_to_status_id, params[:in_reply_to_id]) %__MODULE__{draft | params: params} @@ -212,11 +189,15 @@ defmodule Pleroma.Web.CommonAPI.ActivityDraft do end emoji = Map.merge(emoji, summary_emoji) + {:ok, note_data, _meta} = Builder.note(draft) object = - Utils.make_note_data(draft) + note_data |> Map.put("emoji", emoji) - |> Map.put("source", draft.status) + |> Map.put("source", %{ + "content" => draft.status, + "mediaType" => draft.params[:content_type] + }) |> Map.put("generator", draft.params[:generator]) %__MODULE__{draft | object: object}