diff options
author | feld <feld@feld.me> | 2021-01-25 16:54:57 +0000 |
---|---|---|
committer | feld <feld@feld.me> | 2021-01-25 16:54:57 +0000 |
commit | f1c82fbd426651e6838a9c60578c96a25ae94df4 (patch) | |
tree | 9b6933bcfaea56aadf855c59f7783b73f6e5fff8 /lib/mix | |
parent | 0a6f5f479348eff5f5404d4455fcb8254809812f (diff) | |
parent | f868dcf3acc0fd687a4a74e74f6e150ef565f787 (diff) | |
download | pleroma-f1c82fbd426651e6838a9c60578c96a25ae94df4.tar.gz pleroma-f1c82fbd426651e6838a9c60578c96a25ae94df4.zip |
Merge branch 'refactor/deactivated_user_field' into 'develop'
Change user.deactivated field to user.is_active
See merge request pleroma/pleroma!3073
Diffstat (limited to 'lib/mix')
-rw-r--r-- | lib/mix/tasks/pleroma/email.ex | 2 | ||||
-rw-r--r-- | lib/mix/tasks/pleroma/user.ex | 50 |
2 files changed, 29 insertions, 23 deletions
diff --git a/lib/mix/tasks/pleroma/email.ex b/lib/mix/tasks/pleroma/email.ex index 6b7555fb8..e05c207e5 100644 --- a/lib/mix/tasks/pleroma/email.ex +++ b/lib/mix/tasks/pleroma/email.ex @@ -33,7 +33,7 @@ defmodule Mix.Tasks.Pleroma.Email do Pleroma.User.Query.build(%{ local: true, - deactivated: false, + is_active: true, is_confirmed: false, invisible: false }) diff --git a/lib/mix/tasks/pleroma/user.ex b/lib/mix/tasks/pleroma/user.ex index e87f1c271..53d5fc6d9 100644 --- a/lib/mix/tasks/pleroma/user.ex +++ b/lib/mix/tasks/pleroma/user.ex @@ -107,21 +107,6 @@ defmodule Mix.Tasks.Pleroma.User do end end - def run(["toggle_activated", nickname]) do - start_pleroma() - - with %User{} = user <- User.get_cached_by_nickname(nickname) do - {:ok, user} = User.deactivate(user, !user.deactivated) - - shell_info( - "Activation status of #{nickname}: #{if(user.deactivated, do: "de", else: "")}activated" - ) - else - _ -> - shell_error("No user #{nickname}") - end - end - def run(["reset_password", nickname]) do start_pleroma() @@ -156,20 +141,41 @@ defmodule Mix.Tasks.Pleroma.User do end end + def run(["activate", nickname]) do + start_pleroma() + + with %User{} = user <- User.get_cached_by_nickname(nickname), + false <- user.is_active do + User.set_activation(user, true) + :timer.sleep(500) + + shell_info("Successfully activated #{nickname}") + else + true -> + shell_info("User #{nickname} already activated") + + _ -> + shell_error("No user #{nickname}") + end + end + def run(["deactivate", nickname]) do start_pleroma() - with %User{} = user <- User.get_cached_by_nickname(nickname) do - shell_info("Deactivating #{user.nickname}") - User.deactivate(user) + with %User{} = user <- User.get_cached_by_nickname(nickname), + true <- user.is_active do + User.set_activation(user, false) :timer.sleep(500) user = User.get_cached_by_id(user.id) if Enum.empty?(Enum.filter(User.get_friends(user), & &1.local)) do - shell_info("Successfully unsubscribed all local followers from #{user.nickname}") + shell_info("Successfully deactivated #{nickname} and unsubscribed all local followers") end else + false -> + shell_info("User #{nickname} already deactivated") + _ -> shell_error("No user #{nickname}") end @@ -365,7 +371,7 @@ defmodule Mix.Tasks.Pleroma.User do Pleroma.User.Query.build(%{ local: true, - deactivated: false, + is_active: true, is_moderator: false, is_admin: false, invisible: false @@ -383,7 +389,7 @@ defmodule Mix.Tasks.Pleroma.User do Pleroma.User.Query.build(%{ local: true, - deactivated: false, + is_active: true, is_moderator: false, is_admin: false, invisible: false @@ -420,7 +426,7 @@ defmodule Mix.Tasks.Pleroma.User do shell_info( "#{user.nickname} moderator: #{user.is_moderator}, admin: #{user.is_admin}, locked: #{ user.is_locked - }, deactivated: #{user.deactivated}" + }, is_active: #{user.is_active}" ) end) end) |