diff options
author | feld <feld@feld.me> | 2021-01-18 19:58:30 +0000 |
---|---|---|
committer | feld <feld@feld.me> | 2021-01-18 19:58:30 +0000 |
commit | ed84210da3eeee8e448a3a609f7c4da90d798038 (patch) | |
tree | f14720aaa433e029910c7b12d6deb02adfbad266 /lib | |
parent | 0ad6ea205711df9d1c634f0ad2dde6d432544318 (diff) | |
parent | d49387e9d20ee92bb8395eb28c1f563ff0d720fb (diff) | |
download | pleroma-ed84210da3eeee8e448a3a609f7c4da90d798038.tar.gz pleroma-ed84210da3eeee8e448a3a609f7c4da90d798038.zip |
Merge branch 'refactor/approval_pending_user_field' into 'develop'
Change user.approval_pending field to user.is_approved
See merge request pleroma/pleroma!3090
Diffstat (limited to 'lib')
-rw-r--r-- | lib/pleroma/user.ex | 29 | ||||
-rw-r--r-- | lib/pleroma/user/query.ex | 4 | ||||
-rw-r--r-- | lib/pleroma/web/admin_api/views/account_view.ex | 2 |
3 files changed, 17 insertions, 18 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 9efc27887..d81abbd2b 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -112,7 +112,7 @@ defmodule Pleroma.User do field(:is_locked, :boolean, default: false) field(:is_confirmed, :boolean, default: true) field(:password_reset_pending, :boolean, default: false) - field(:approval_pending, :boolean, default: false) + field(:is_approved, :boolean, default: true) field(:registration_reason, :string, default: nil) field(:confirmation_token, :string, default: nil) field(:default_scope, :string, default: "public") @@ -288,7 +288,7 @@ defmodule Pleroma.User do @spec account_status(User.t()) :: account_status() def account_status(%User{deactivated: true}), do: :deactivated def account_status(%User{password_reset_pending: true}), do: :password_reset_pending - def account_status(%User{local: true, approval_pending: true}), do: :approval_pending + def account_status(%User{local: true, is_approved: false}), do: :approval_pending def account_status(%User{local: true, is_confirmed: false}) do if Config.get([:instance, :account_activation_required]) do @@ -711,16 +711,16 @@ defmodule Pleroma.User do opts[:confirmed] end - need_approval? = - if is_nil(opts[:need_approval]) do - Config.get([:instance, :account_approval_required]) + approved? = + if is_nil(opts[:approved]) do + !Config.get([:instance, :account_approval_required]) else - opts[:need_approval] + opts[:approved] end struct |> confirmation_changeset(set_confirmation: confirmed?) - |> approval_changeset(need_approval: need_approval?) + |> approval_changeset(set_approval: approved?) |> cast(params, [ :bio, :raw_bio, @@ -814,14 +814,14 @@ defmodule Pleroma.User do end end - def post_register_action(%User{approval_pending: true} = user) do + def post_register_action(%User{is_approved: false} = user) do with {:ok, _} <- send_user_approval_email(user), {:ok, _} <- send_admin_approval_emails(user) do {:ok, user} end end - def post_register_action(%User{approval_pending: false, is_confirmed: true} = user) do + def post_register_action(%User{is_approved: true, is_confirmed: true} = user) do with {:ok, user} <- autofollow_users(user), {:ok, _} <- autofollowing_users(user), {:ok, user} <- set_cache(user), @@ -1624,8 +1624,8 @@ defmodule Pleroma.User do end) end - def approve(%User{approval_pending: true} = user) do - with chg <- change(user, approval_pending: false), + def approve(%User{is_approved: false} = user) do + with chg <- change(user, is_approved: true), {:ok, user} <- update_and_set_cache(chg) do post_register_action(user) {:ok, user} @@ -1684,7 +1684,7 @@ defmodule Pleroma.User do is_locked: false, is_confirmed: true, password_reset_pending: false, - approval_pending: false, + is_approved: true, registration_reason: nil, confirmation_token: nil, domain_blocks: [], @@ -2327,9 +2327,8 @@ defmodule Pleroma.User do end @spec approval_changeset(User.t(), keyword()) :: Changeset.t() - def approval_changeset(user, need_approval: need_approval?) do - params = if need_approval?, do: %{approval_pending: true}, else: %{approval_pending: false} - cast(user, params, [:approval_pending]) + def approval_changeset(user, set_approval: approved?) do + cast(user, %{is_approved: approved?}, [:is_approved]) end def add_pinnned_activity(user, %Pleroma.Activity{id: id}) do diff --git a/lib/pleroma/user/query.ex b/lib/pleroma/user/query.ex index 481c41d8c..74ef1158a 100644 --- a/lib/pleroma/user/query.ex +++ b/lib/pleroma/user/query.ex @@ -138,7 +138,7 @@ defmodule Pleroma.User.Query do defp compose_query({:active, _}, query) do User.restrict_deactivated(query) - |> where([u], u.approval_pending == false) + |> where([u], u.is_approved == true) end defp compose_query({:legacy_active, _}, query) do @@ -159,7 +159,7 @@ defmodule Pleroma.User.Query do end defp compose_query({:need_approval, _}, query) do - where(query, [u], u.approval_pending) + where(query, [u], u.is_approved == false) end defp compose_query({:unconfirmed, _}, query) do diff --git a/lib/pleroma/web/admin_api/views/account_view.ex b/lib/pleroma/web/admin_api/views/account_view.ex index 10d2e698b..34bf2e67a 100644 --- a/lib/pleroma/web/admin_api/views/account_view.ex +++ b/lib/pleroma/web/admin_api/views/account_view.ex @@ -78,7 +78,7 @@ defmodule Pleroma.Web.AdminAPI.AccountView do "roles" => User.roles(user), "tags" => user.tags || [], "is_confirmed" => user.is_confirmed, - "approval_pending" => user.approval_pending, + "is_approved" => user.is_approved, "url" => user.uri || user.ap_id, "registration_reason" => user.registration_reason, "actor_type" => user.actor_type |