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})
23 Ecto.Changeset.change(user)
24 |> put_embed(:info, info_cng)
26 {:ok, user} = User.update_and_set_cache(user_cng)
28 IO.puts("Admin status of #{nickname}: #{user.info.is_admin}")
31 IO.puts("No local user #{nickname}")