summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorfeld <feld@feld.me>2021-01-18 19:58:30 +0000
committerfeld <feld@feld.me>2021-01-18 19:58:30 +0000
commited84210da3eeee8e448a3a609f7c4da90d798038 (patch)
treef14720aaa433e029910c7b12d6deb02adfbad266 /lib
parent0ad6ea205711df9d1c634f0ad2dde6d432544318 (diff)
parentd49387e9d20ee92bb8395eb28c1f563ff0d720fb (diff)
downloadpleroma-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.ex29
-rw-r--r--lib/pleroma/user/query.ex4
-rw-r--r--lib/pleroma/web/admin_api/views/account_view.ex2
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