@@ -10,6 +10,7 @@ defmodule Mobilizon.GraphQL.Resolvers.User do
|
|||||||
alias Mobilizon.Federation.ActivityPub.Actions
|
alias Mobilizon.Federation.ActivityPub.Actions
|
||||||
alias Mobilizon.Service.AntiSpam
|
alias Mobilizon.Service.AntiSpam
|
||||||
alias Mobilizon.Service.Auth.Authenticator
|
alias Mobilizon.Service.Auth.Authenticator
|
||||||
|
alias Mobilizon.Service.Statistics
|
||||||
alias Mobilizon.Storage.{Page, Repo}
|
alias Mobilizon.Storage.{Page, Repo}
|
||||||
alias Mobilizon.Users.{Setting, User}
|
alias Mobilizon.Users.{Setting, User}
|
||||||
|
|
||||||
@@ -182,6 +183,8 @@ defmodule Mobilizon.GraphQL.Resolvers.User do
|
|||||||
role: role
|
role: role
|
||||||
})
|
})
|
||||||
|> Users.register() do
|
|> Users.register() do
|
||||||
|
# Invalidate the admin Dashboard user cache
|
||||||
|
Statistics.clear_cached_value(:local_users)
|
||||||
Email.User.send_confirmation_email(user, Map.get(args, :locale, "en"))
|
Email.User.send_confirmation_email(user, Map.get(args, :locale, "en"))
|
||||||
{:ok, user}
|
{:ok, user}
|
||||||
else
|
else
|
||||||
@@ -626,6 +629,8 @@ defmodule Mobilizon.GraphQL.Resolvers.User do
|
|||||||
with %User{disabled: true} = user <- Users.get_user(user_id),
|
with %User{disabled: true} = user <- Users.get_user(user_id),
|
||||||
{:ok, %User{} = updated_user} <-
|
{:ok, %User{} = updated_user} <-
|
||||||
Users.unban_user(user) do
|
Users.unban_user(user) do
|
||||||
|
# Invalidate the admin Dashboard user cache
|
||||||
|
Statistics.clear_cached_value(:local_users)
|
||||||
Admin.log_action(moderator_actor, "unsuspend", user)
|
Admin.log_action(moderator_actor, "unsuspend", user)
|
||||||
{:ok, updated_user}
|
{:ok, updated_user}
|
||||||
else
|
else
|
||||||
@@ -694,7 +699,14 @@ defmodule Mobilizon.GraphQL.Resolvers.User do
|
|||||||
Actions.Delete.delete(actor, actor_performing, true)
|
Actions.Delete.delete(actor, actor_performing, true)
|
||||||
end) do
|
end) do
|
||||||
# Delete user
|
# Delete user
|
||||||
Users.delete_user(user, reserve_email: Keyword.get(options, :reserve_email, activated))
|
with {:ok, user} <-
|
||||||
|
Users.delete_user(user,
|
||||||
|
reserve_email: Keyword.get(options, :reserve_email, activated)
|
||||||
|
) do
|
||||||
|
# Invalidate the admin Dashboard user cache
|
||||||
|
Statistics.clear_cached_value(:local_users)
|
||||||
|
{:ok, user}
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user