Add href to in-reply-to.
THis should enable fetching from pleroma posts.
This commit is contained in:
parent
f226f46a09
commit
25c733f402
2 changed files with 14 additions and 3 deletions
|
@ -1,10 +1,18 @@
|
||||||
defmodule Pleroma.Web.OStatus.ActivityRepresenter do
|
defmodule Pleroma.Web.OStatus.ActivityRepresenter do
|
||||||
alias Pleroma.{Activity, User}
|
alias Pleroma.{Activity, User, Object}
|
||||||
alias Pleroma.Web.OStatus.UserRepresenter
|
alias Pleroma.Web.OStatus.UserRepresenter
|
||||||
require Logger
|
require Logger
|
||||||
|
|
||||||
|
defp get_href(id) do
|
||||||
|
with %Object{data: %{ "external_url" => external_url } }<- Object.get_cached_by_ap_id(id) do
|
||||||
|
external_url
|
||||||
|
else
|
||||||
|
_e -> id
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
defp get_in_reply_to(%{"object" => %{"inReplyTo" => in_reply_to}}) do
|
defp get_in_reply_to(%{"object" => %{"inReplyTo" => in_reply_to}}) do
|
||||||
[{:"thr:in-reply-to", [ref: to_charlist(in_reply_to)], []}]
|
[{:"thr:in-reply-to", [ref: to_charlist(in_reply_to), href: to_charlist(get_href(in_reply_to))], []}]
|
||||||
end
|
end
|
||||||
|
|
||||||
defp get_in_reply_to(_), do: []
|
defp get_in_reply_to(_), do: []
|
||||||
|
|
|
@ -58,6 +58,9 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do
|
||||||
data = %{answer.data | "object" => object}
|
data = %{answer.data | "object" => object}
|
||||||
answer = %{answer | data: data}
|
answer = %{answer | data: data}
|
||||||
|
|
||||||
|
note_object = Object.get_by_ap_id(note.data["object"]["id"])
|
||||||
|
Repo.update!(Object.change(note_object, %{ data: Map.put(note_object.data, "external_url", "someurl") }))
|
||||||
|
|
||||||
user = User.get_cached_by_ap_id(answer.data["actor"])
|
user = User.get_cached_by_ap_id(answer.data["actor"])
|
||||||
|
|
||||||
expected = """
|
expected = """
|
||||||
|
@ -73,7 +76,7 @@ defmodule Pleroma.Web.OStatus.ActivityRepresenterTest do
|
||||||
<link type="application/atom+xml" href="#{answer.data["object"]["id"]}" rel="self" />
|
<link type="application/atom+xml" href="#{answer.data["object"]["id"]}" rel="self" />
|
||||||
<link type="text/html" href="#{answer.data["object"]["id"]}" rel="alternate" />
|
<link type="text/html" href="#{answer.data["object"]["id"]}" rel="alternate" />
|
||||||
<category term="2hu"/>
|
<category term="2hu"/>
|
||||||
<thr:in-reply-to ref="#{note.data["object"]["id"]}" />
|
<thr:in-reply-to ref="#{note.data["object"]["id"]}" href="someurl" />
|
||||||
<link rel="mentioned" ostatus:object-type="http://activitystrea.ms/schema/1.0/collection" href="http://activityschema.org/collection/public"/>
|
<link rel="mentioned" ostatus:object-type="http://activitystrea.ms/schema/1.0/collection" href="http://activityschema.org/collection/public"/>
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue