diff options
| author | Alex Gleason <alex@alexgleason.me> | 2020-07-12 21:31:13 -0500 | 
|---|---|---|
| committer | Alex Gleason <alex@alexgleason.me> | 2020-07-12 22:55:37 -0500 | 
| commit | bcfd38c8f3ecd2620bae7fc756ffc3f4bbe2b89e (patch) | |
| tree | 11985eedcf9cb5fb10fd249183da9ccc0e81e55f /lib | |
| parent | e4e557781877c7c3e4f6197cc52963025485dbb3 (diff) | |
| download | pleroma-bcfd38c8f3ecd2620bae7fc756ffc3f4bbe2b89e.tar.gz pleroma-bcfd38c8f3ecd2620bae7fc756ffc3f4bbe2b89e.zip | |
Make a user unapproved when registering with `account_approval_required` on
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/pleroma/user.ex | 14 | 
1 files changed, 14 insertions, 0 deletions
| diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 25c63fc44..e84900c4f 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -634,8 +634,16 @@ defmodule Pleroma.User do          opts[:need_confirmation]        end +    need_approval? = +      if is_nil(opts[:need_approval]) do +        Config.get([:instance, :account_approval_required]) +      else +        opts[:need_approval] +      end +      struct      |> confirmation_changeset(need_confirmation: need_confirmation?) +    |> approval_changeset(need_approval: need_approval?)      |> cast(params, [        :bio,        :raw_bio, @@ -2145,6 +2153,12 @@ defmodule Pleroma.User do      cast(user, params, [:confirmation_pending, :confirmation_token])    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]) +  end +    def add_pinnned_activity(user, %Pleroma.Activity{id: id}) do      if id not in user.pinned_activities do        max_pinned_statuses = Config.get([:instance, :max_pinned_statuses], 0) | 
