aboutsummaryrefslogtreecommitdiff
path: root/lib/pleroma/user.ex
diff options
context:
space:
mode:
authorAlex Gleason <alex@alexgleason.me>2020-07-27 12:29:18 -0500
committerAlex Gleason <alex@alexgleason.me>2020-07-27 12:29:18 -0500
commit6747bf2e1642d7715a9f08469247bc99ff7165cb (patch)
tree9161918fc6979ac2fa1f41f203a1e42cd89fc7c8 /lib/pleroma/user.ex
parent6931dbfa582f0e5360e74dffdceee1b9ed564b17 (diff)
parent2a3abfd326f0cbb588dfe66a23e9783be3038a5e (diff)
downloadpleroma-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.ex23
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