aboutsummaryrefslogtreecommitdiff
path: root/lib/mix/tasks/pleroma
diff options
context:
space:
mode:
authorkaniini <ariadne@dereferenced.org>2019-09-26 03:00:38 +0000
committerkaniini <ariadne@dereferenced.org>2019-09-26 03:00:38 +0000
commit48a82c46096a560fe9331a63f19ace6faaf98c3d (patch)
tree02c6216dbcb3814115aa64de0ef5a171121b527e /lib/mix/tasks/pleroma
parent59ae9255fbf7abd6efe46799b19c094724f5d51b (diff)
parent035f22f7849815c5f77a734c56f409c0f08ac853 (diff)
downloadpleroma-48a82c46096a560fe9331a63f19ace6faaf98c3d.tar.gz
Merge branch 'refactor/user' into 'develop'
Simplify updating user's `info` See merge request pleroma/pleroma!1712
Diffstat (limited to 'lib/mix/tasks/pleroma')
-rw-r--r--lib/mix/tasks/pleroma/user.ex33
1 files changed, 7 insertions, 26 deletions
diff --git a/lib/mix/tasks/pleroma/user.ex b/lib/mix/tasks/pleroma/user.ex
index eb0052144..d93ba8dee 100644
--- a/lib/mix/tasks/pleroma/user.ex
+++ b/lib/mix/tasks/pleroma/user.ex
@@ -4,7 +4,6 @@
defmodule Mix.Tasks.Pleroma.User do
use Mix.Task
- import Ecto.Changeset
import Mix.Pleroma
alias Pleroma.User
alias Pleroma.UserInviteToken
@@ -228,9 +227,9 @@ defmodule Mix.Tasks.Pleroma.User do
shell_info("Deactivating #{user.nickname}")
User.deactivate(user)
- {:ok, friends} = User.get_friends(user)
-
- Enum.each(friends, fn friend ->
+ user
+ |> User.get_friends()
+ |> Enum.each(fn friend ->
user = User.get_cached_by_id(user.id)
shell_info("Unsubscribing #{friend.nickname} from #{user.nickname}")
@@ -405,7 +404,7 @@ defmodule Mix.Tasks.Pleroma.User do
start_pleroma()
with %User{local: true} = user <- User.get_cached_by_nickname(nickname) do
- {:ok, _} = User.delete_user_activities(user)
+ User.delete_user_activities(user)
shell_info("User #{nickname} statuses deleted.")
else
_ ->
@@ -443,39 +442,21 @@ defmodule Mix.Tasks.Pleroma.User do
end
defp set_moderator(user, value) do
- info_cng = User.Info.admin_api_update(user.info, %{is_moderator: value})
-
- user_cng =
- Ecto.Changeset.change(user)
- |> put_embed(:info, info_cng)
-
- {:ok, user} = User.update_and_set_cache(user_cng)
+ {:ok, user} = User.update_info(user, &User.Info.admin_api_update(&1, %{is_moderator: value}))
shell_info("Moderator status of #{user.nickname}: #{user.info.is_moderator}")
user
end
defp set_admin(user, value) do
- info_cng = User.Info.admin_api_update(user.info, %{is_admin: value})
-
- user_cng =
- Ecto.Changeset.change(user)
- |> put_embed(:info, info_cng)
-
- {:ok, user} = User.update_and_set_cache(user_cng)
+ {:ok, user} = User.update_info(user, &User.Info.admin_api_update(&1, %{is_admin: value}))
shell_info("Admin status of #{user.nickname}: #{user.info.is_admin}")
user
end
defp set_locked(user, value) do
- info_cng = User.Info.user_upgrade(user.info, %{locked: value})
-
- user_cng =
- Ecto.Changeset.change(user)
- |> put_embed(:info, info_cng)
-
- {:ok, user} = User.update_and_set_cache(user_cng)
+ {:ok, user} = User.update_info(user, &User.Info.user_upgrade(&1, %{locked: value}))
shell_info("Locked status of #{user.nickname}: #{user.info.locked}")
user