Admin API: Endpoint for fetching latest user's statuses

This commit is contained in:
Maxim Filippov 2019-07-14 00:37:19 +03:00
commit a9459ff98f
6 changed files with 67 additions and 1 deletions

View file

@ -82,6 +82,22 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do
end
end
def list_user_statuses(conn, %{"nickname" => nickname} = params) do
with %User{} = user <- User.get_cached_by_nickname_or_id(nickname) do
{_, page_size} = page_params(params)
activities =
ActivityPub.fetch_user_activities(user, nil, %{
"limit" => page_size
})
conn
|> json(StatusView.render("index.json", %{activities: activities, as: :activity}))
else
_ -> {:error, :not_found}
end
end
def user_toggle_activation(conn, %{"nickname" => nickname}) do
user = User.get_cached_by_nickname(nickname)

View file

@ -197,6 +197,7 @@ defmodule Pleroma.Web.Router do
get("/users", AdminAPIController, :list_users)
get("/users/:nickname", AdminAPIController, :user_show)
get("/users/:nickname/statuses", AdminAPIController, :list_user_statuses)
get("/reports", AdminAPIController, :list_reports)
get("/reports/:id", AdminAPIController, :report_show)