mirror of
https://akkoma.dev/AkkomaGang/akkoma.git
synced 2024-11-10 19:29:11 +00:00
Return xml notice at /notice path.
This commit is contained in:
parent
89a8dc7485
commit
c680ae581d
3 changed files with 24 additions and 0 deletions
|
@ -86,6 +86,19 @@ defmodule Pleroma.Web.OStatus.OStatusController do
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def notice(conn, %{"id" => id}) do
|
||||||
|
with %Activity{} = activity <- Repo.get(Activity, id),
|
||||||
|
%User{} = user <- User.get_cached_by_ap_id(activity.data["actor"]) do
|
||||||
|
case get_format(conn) do
|
||||||
|
"html" ->
|
||||||
|
conn
|
||||||
|
|> put_resp_content_type("text/html")
|
||||||
|
|> send_file(200, "priv/static/index.html")
|
||||||
|
_ -> represent_activity(conn, activity, user)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
defp represent_activity(conn, activity, user) do
|
defp represent_activity(conn, activity, user) do
|
||||||
response = activity
|
response = activity
|
||||||
|> ActivityRepresenter.to_simple_form(user, true)
|
|> ActivityRepresenter.to_simple_form(user, true)
|
||||||
|
|
|
@ -207,6 +207,7 @@ defmodule Pleroma.Web.Router do
|
||||||
|
|
||||||
get "/objects/:uuid", OStatus.OStatusController, :object
|
get "/objects/:uuid", OStatus.OStatusController, :object
|
||||||
get "/activities/:uuid", OStatus.OStatusController, :activity
|
get "/activities/:uuid", OStatus.OStatusController, :activity
|
||||||
|
get "/notice/:id", OStatus.OStatusController, :notice
|
||||||
|
|
||||||
get "/users/:nickname/feed", OStatus.OStatusController, :feed
|
get "/users/:nickname/feed", OStatus.OStatusController, :feed
|
||||||
get "/users/:nickname", OStatus.OStatusController, :feed_redirect
|
get "/users/:nickname", OStatus.OStatusController, :feed_redirect
|
||||||
|
|
|
@ -73,6 +73,16 @@ defmodule Pleroma.Web.OStatus.OStatusControllerTest do
|
||||||
|
|
||||||
assert response(conn, 200)
|
assert response(conn, 200)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
test "gets a notice", %{conn: conn} do
|
||||||
|
note_activity = insert(:note_activity)
|
||||||
|
url = "/notice/#{note_activity.id}"
|
||||||
|
|
||||||
|
conn = conn
|
||||||
|
|> get(url)
|
||||||
|
|
||||||
|
assert response(conn, 200)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
defmodule Pleroma.Web.OStatusMock do
|
defmodule Pleroma.Web.OStatusMock do
|
||||||
|
|
Loading…
Reference in a new issue