MastoAPI: Set user id on replies.

This commit is contained in:
Roger Braun 2017-09-15 08:49:31 +02:00
parent f445a1b376
commit 3aaf6608c6

View file

@ -1,7 +1,7 @@
defmodule Pleroma.Web.MastodonAPI.StatusView do defmodule Pleroma.Web.MastodonAPI.StatusView do
use Pleroma.Web, :view use Pleroma.Web, :view
alias Pleroma.Web.MastodonAPI.{AccountView, StatusView} alias Pleroma.Web.MastodonAPI.{AccountView, StatusView}
alias Pleroma.User alias Pleroma.{User, Activity}
def render("index.json", opts) do def render("index.json", opts) do
render_many(opts.activities, StatusView, "status.json", opts) render_many(opts.activities, StatusView, "status.json", opts)
@ -31,13 +31,17 @@ def render("status.json", %{activity: %{data: %{"object" => object}} = activity}
|> NaiveDateTime.to_iso8601 |> NaiveDateTime.to_iso8601
|> String.replace(~r/(\.\d+)?$/, ".000Z", global: false) |> String.replace(~r/(\.\d+)?$/, ".000Z", global: false)
# TODO: Add cached version.
reply_to = Activity.get_create_activity_by_object_ap_id(object["inReplyTo"])
reply_to_user = reply_to && User.get_cached_by_ap_id(reply_to.data["actor"])
%{ %{
id: activity.id, id: activity.id,
uri: object["id"], uri: object["id"],
url: object["external_url"], url: object["external_url"],
account: AccountView.render("account.json", %{user: user}), account: AccountView.render("account.json", %{user: user}),
in_reply_to_id: object["inReplyToStatusId"], in_reply_to_id: reply_to && reply_to.id,
in_reply_to_account_id: nil, in_reply_to_account_id: reply_to_user && reply_to_user.id,
reblog: nil, reblog: nil,
content: HtmlSanitizeEx.basic_html(object["content"]), content: HtmlSanitizeEx.basic_html(object["content"]),
created_at: created_at, created_at: created_at,