diff options
author | kaniini <ariadne@dereferenced.org> | 2019-07-23 23:59:21 +0000 |
---|---|---|
committer | kaniini <ariadne@dereferenced.org> | 2019-07-23 23:59:21 +0000 |
commit | 9c6357324ea073ff1ac9c3307714da7e8bb2b8ac (patch) | |
tree | 4bd1e0164af854a06e5894ad318eaf2c9f6a3c6c /lib/pleroma/web/admin_api/admin_api_controller.ex | |
parent | 2ae510ee819e86c7841917a85e2adbb7183fe8e4 (diff) | |
parent | f46805bb40bf29cd67acb33b6b65ed1e4e28d3e1 (diff) | |
download | pleroma-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.ex | 19 |
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) |