aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/web/admin_api/admin_api_controller.ex
diff options
context:
space:
mode:
authorkaniini <ariadne@dereferenced.org>2019-07-23 23:59:21 +0000
committerkaniini <ariadne@dereferenced.org>2019-07-23 23:59:21 +0000
commit9c6357324ea073ff1ac9c3307714da7e8bb2b8ac (patch)
tree4bd1e0164af854a06e5894ad318eaf2c9f6a3c6c /lib/pleroma/web/admin_api/admin_api_controller.ex
parent2ae510ee819e86c7841917a85e2adbb7183fe8e4 (diff)
parentf46805bb40bf29cd67acb33b6b65ed1e4e28d3e1 (diff)
downloadpleroma-9c6357324ea073ff1ac9c3307714da7e8bb2b8ac.tar.gz
Merge branch 'feature/admin-api-user-statuses' into 'develop'
Admin API: Endpoint for fetching latest user's statuses See merge request pleroma/pleroma!1413
Diffstat (limited to 'lib/pleroma/web/admin_api/admin_api_controller.ex')
-rw-r--r--lib/pleroma/web/admin_api/admin_api_controller.ex19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/pleroma/web/admin_api/admin_api_controller.ex b/lib/pleroma/web/admin_api/admin_api_controller.ex
index 811be1eff..1ae5acd91 100644
--- a/lib/pleroma/web/admin_api/admin_api_controller.ex
+++ b/lib/pleroma/web/admin_api/admin_api_controller.ex
@@ -82,6 +82,25 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do
end
end
+ def list_user_statuses(conn, %{"nickname" => nickname} = params) do
+ godmode = params["godmode"] == "true" || params["godmode"] == true
+
+ 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,
+ "godmode" => godmode
+ })
+
+ 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)