aboutsummaryrefslogtreecommitdiff
path: root/lib/mix/tasks
diff options
context:
space:
mode:
authorMark Felder <feld@FreeBSD.org>2019-05-16 13:11:17 -0500
committerMark Felder <feld@FreeBSD.org>2019-05-16 13:11:17 -0500
commitebb04821161e4377f311af7192168e2c01e8c1bb (patch)
tree37995ccda7c4351653de56db4593b877a443fde0 /lib/mix/tasks
parentf168a1cbdc318ffaa2d8bc9fb561eb3dfdfb89d9 (diff)
parentfde30aee43edd50a40dd4bfdc0008f5395dfc751 (diff)
downloadpleroma-ebb04821161e4377f311af7192168e2c01e8c1bb.tar.gz
Merge branch 'develop' into conversations-import
Diffstat (limited to 'lib/mix/tasks')
-rw-r--r--lib/mix/tasks/pleroma/user.ex19
1 files changed, 19 insertions, 0 deletions
diff --git a/lib/mix/tasks/pleroma/user.ex b/lib/mix/tasks/pleroma/user.ex
index d130ff8c9..25fc40ea7 100644
--- a/lib/mix/tasks/pleroma/user.ex
+++ b/lib/mix/tasks/pleroma/user.ex
@@ -77,6 +77,10 @@ defmodule Mix.Tasks.Pleroma.User do
## Delete tags from a user.
mix pleroma.user untag NICKNAME TAGS
+
+ ## Toggle confirmation of the user's account.
+
+ mix pleroma.user toggle_confirmed NICKNAME
"""
def run(["new", nickname, email | rest]) do
{options, [], []} =
@@ -388,6 +392,21 @@ defmodule Mix.Tasks.Pleroma.User do
end
end
+ def run(["toggle_confirmed", nickname]) do
+ Common.start_pleroma()
+
+ with %User{} = user <- User.get_cached_by_nickname(nickname) do
+ {:ok, user} = User.toggle_confirmation(user)
+
+ message = if user.info.confirmation_pending, do: "needs", else: "doesn't need"
+
+ Mix.shell().info("#{nickname} #{message} confirmation.")
+ else
+ _ ->
+ Mix.shell().error("No local user #{nickname}")
+ end
+ end
+
defp set_moderator(user, value) do
info_cng = User.Info.admin_api_update(user.info, %{is_moderator: value})