diff options
author | lain <lain@soykaf.club> | 2020-07-29 16:24:22 +0200 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-07-29 16:24:22 +0200 |
commit | dc36d6e9d21dc47fa9b6332c6444a055f789fabd (patch) | |
tree | d24ffb684053b9042339396eeb8bc02368ed6602 /lib/pleroma/web/admin_api/controllers/admin_api_controller.ex | |
parent | f715bf1915b75cb3c5b24d4661a94885aaa1a0ac (diff) | |
parent | a6d3bb5f30697cafc5dd9acf490bde7e2f33f5f8 (diff) | |
download | pleroma-dc36d6e9d21dc47fa9b6332c6444a055f789fabd.tar.gz |
Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into frontend-bundles-admin
Diffstat (limited to 'lib/pleroma/web/admin_api/controllers/admin_api_controller.ex')
-rw-r--r-- | lib/pleroma/web/admin_api/controllers/admin_api_controller.ex | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/lib/pleroma/web/admin_api/controllers/admin_api_controller.ex b/lib/pleroma/web/admin_api/controllers/admin_api_controller.ex index 5101e28d6..aa2af1ab5 100644 --- a/lib/pleroma/web/admin_api/controllers/admin_api_controller.ex +++ b/lib/pleroma/web/admin_api/controllers/admin_api_controller.ex @@ -44,6 +44,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do :user_toggle_activation, :user_activate, :user_deactivate, + :user_approve, :tag_users, :untag_users, :right_add, @@ -303,6 +304,21 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do |> render("index.json", %{users: Keyword.values(updated_users)}) end + def user_approve(%{assigns: %{user: admin}} = conn, %{"nicknames" => nicknames}) do + users = Enum.map(nicknames, &User.get_cached_by_nickname/1) + {:ok, updated_users} = User.approve(users) + + ModerationLog.insert_log(%{ + actor: admin, + subject: users, + action: "approve" + }) + + conn + |> put_view(AccountView) + |> render("index.json", %{users: updated_users}) + end + def tag_users(%{assigns: %{user: admin}} = conn, %{"nicknames" => nicknames, "tags" => tags}) do with {:ok, _} <- User.tag(nicknames, tags) do ModerationLog.insert_log(%{ @@ -354,7 +370,7 @@ defmodule Pleroma.Web.AdminAPI.AdminAPIController do end end - @filters ~w(local external active deactivated is_admin is_moderator) + @filters ~w(local external active deactivated need_approval is_admin is_moderator) @spec maybe_parse_filters(String.t()) :: %{required(String.t()) => true} | %{} defp maybe_parse_filters(filters) when is_nil(filters) or filters == "", do: %{} |