diff options
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/user/info.ex | 9 | ||||
-rw-r--r-- | lib/pleroma/web/mastodon_api/views/admin/account_view.ex | 4 |
2 files changed, 12 insertions, 1 deletions
diff --git a/lib/pleroma/user/info.ex b/lib/pleroma/user/info.ex index 818b64645..e3fd65a6e 100644 --- a/lib/pleroma/user/info.ex +++ b/lib/pleroma/user/info.ex @@ -6,6 +6,8 @@ defmodule Pleroma.User.Info do use Ecto.Schema import Ecto.Changeset + alias Pleroma.User.Info + embedded_schema do field(:banner, :map, default: %{}) field(:background, :map, default: %{}) @@ -250,4 +252,11 @@ defmodule Pleroma.User.Info do cast(info, params, [:pinned_activities]) end + + def roles(%Info{is_moderator: is_moderator, is_admin: is_admin}) do + %{ + admin: is_admin, + moderator: is_moderator + } + end end diff --git a/lib/pleroma/web/mastodon_api/views/admin/account_view.ex b/lib/pleroma/web/mastodon_api/views/admin/account_view.ex index 74ca13564..66ad20ec4 100644 --- a/lib/pleroma/web/mastodon_api/views/admin/account_view.ex +++ b/lib/pleroma/web/mastodon_api/views/admin/account_view.ex @@ -6,6 +6,7 @@ defmodule Pleroma.Web.MastodonAPI.Admin.AccountView do use Pleroma.Web, :view alias Pleroma.Web.MastodonAPI.Admin.AccountView + alias Pleroma.User.Info def render("index.json", %{users: users, count: count, page_size: page_size}) do %{ @@ -19,7 +20,8 @@ defmodule Pleroma.Web.MastodonAPI.Admin.AccountView do %{ "id" => user.id, "nickname" => user.nickname, - "deactivated" => user.info.deactivated + "deactivated" => user.info.deactivated, + "roles" => Info.roles(user.info) } end end |