diff options
author | Mark Felder <feld@FreeBSD.org> | 2019-05-16 13:11:17 -0500 |
---|---|---|
committer | Mark Felder <feld@FreeBSD.org> | 2019-05-16 13:11:17 -0500 |
commit | ebb04821161e4377f311af7192168e2c01e8c1bb (patch) | |
tree | 37995ccda7c4351653de56db4593b877a443fde0 /lib/pleroma/user.ex | |
parent | f168a1cbdc318ffaa2d8bc9fb561eb3dfdfb89d9 (diff) | |
parent | fde30aee43edd50a40dd4bfdc0008f5395dfc751 (diff) | |
download | pleroma-ebb04821161e4377f311af7192168e2c01e8c1bb.tar.gz |
Merge branch 'develop' into conversations-import
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r-- | lib/pleroma/user.ex | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index c6a562a61..1aa966dfc 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -1378,4 +1378,17 @@ defmodule Pleroma.User do def showing_reblogs?(%User{} = user, %User{} = target) do target.ap_id not in user.info.muted_reblogs end + + @spec toggle_confirmation(User.t()) :: {:ok, User.t()} | {:error, Changeset.t()} + def toggle_confirmation(%User{} = user) do + need_confirmation? = !user.info.confirmation_pending + + info_changeset = + User.Info.confirmation_changeset(user.info, need_confirmation: need_confirmation?) + + user + |> change() + |> put_embed(:info, info_changeset) + |> update_and_set_cache() + end end |