1 defmodule Mix.Tasks.SetAdmin do
8 Usage: set_admin nickname [true|false]
10 def run([nickname | rest]) do
11 Application.ensure_all_started(:pleroma)
15 [admin] -> admin == "true"
19 with %User{local: true} = user <- User.get_by_nickname(nickname) do
20 info_cng = User.Info.admin_api_update(user.info, %{is_admin: !!admin})
21 user_cng = Ecto.Changeset.change(user)
22 |> put_embed(:info, info_cng)
23 {:ok, user} = User.update_and_set_cache(user_cng)
25 IO.puts("Admin status of #{nickname}: #{user.info.is_admin}")
28 IO.puts("No local user #{nickname}")