diff options
author | Alex Gleason <alex@alexgleason.me> | 2020-07-27 12:29:18 -0500 |
---|---|---|
committer | Alex Gleason <alex@alexgleason.me> | 2020-07-27 12:29:18 -0500 |
commit | 6747bf2e1642d7715a9f08469247bc99ff7165cb (patch) | |
tree | 9161918fc6979ac2fa1f41f203a1e42cd89fc7c8 /lib/pleroma/user.ex | |
parent | 6931dbfa582f0e5360e74dffdceee1b9ed564b17 (diff) | |
parent | 2a3abfd326f0cbb588dfe66a23e9783be3038a5e (diff) | |
download | pleroma-6747bf2e1642d7715a9f08469247bc99ff7165cb.tar.gz |
Merge remote-tracking branch 'upstream/develop' into by-approval
Diffstat (limited to 'lib/pleroma/user.ex')
-rw-r--r-- | lib/pleroma/user.ex | 23 |
1 files changed, 22 insertions, 1 deletions
diff --git a/lib/pleroma/user.ex b/lib/pleroma/user.ex index 0138775bc..a78123fe4 100644 --- a/lib/pleroma/user.ex +++ b/lib/pleroma/user.ex @@ -730,12 +730,33 @@ defmodule Pleroma.User do def post_register_action(%User{} = user) do with {:ok, user} <- autofollow_users(user), {:ok, user} <- set_cache(user), - {:ok, _} <- User.WelcomeMessage.post_welcome_message_to_user(user), + {:ok, _} <- send_welcome_email(user), + {:ok, _} <- send_welcome_message(user), {:ok, _} <- try_send_confirmation_email(user) do {:ok, user} end end + def send_welcome_message(user) do + if User.WelcomeMessage.enabled?() do + User.WelcomeMessage.post_message(user) + {:ok, :enqueued} + else + {:ok, :noop} + end + end + + def send_welcome_email(%User{email: email} = user) when is_binary(email) do + if User.WelcomeEmail.enabled?() do + User.WelcomeEmail.send_email(user) + {:ok, :enqueued} + else + {:ok, :noop} + end + end + + def send_welcome_email(_), do: {:ok, :noop} + @spec try_send_confirmation_email(User.t()) :: {:ok, :enqueued | :noop} def try_send_confirmation_email(%User{confirmation_pending: true} = user) do if Config.get([:instance, :account_activation_required]) do |