feat: prevent join requests with equal mail
All checks were successful
continuous-integration/drone/push Build is passing
All checks were successful
continuous-integration/drone/push Build is passing
This commit is contained in:
parent
40a4461d23
commit
086ecdcb1b
22 changed files with 534 additions and 11 deletions
|
|
@ -18,10 +18,16 @@ defmodule MvWeb.Emails.JoinConfirmationEmail do
|
|||
Uses the same SMTP configuration as the test mail (Settings or boot ENV) via
|
||||
`Mailer.deliver/2` with `Mailer.smtp_config/0` for consistency.
|
||||
|
||||
Called from the domain after a JoinRequest is created (submit flow).
|
||||
Called from the domain after a JoinRequest is created (submit flow) or when
|
||||
resending to an existing pending request.
|
||||
|
||||
## Options
|
||||
- `:resend` - If true, adds a short note that the link is being sent again for an existing request.
|
||||
|
||||
Returns `{:ok, email}` on success, `{:error, reason}` on delivery failure.
|
||||
"""
|
||||
def send(email_address, token) when is_binary(email_address) and is_binary(token) do
|
||||
def send(email_address, token, opts \\ [])
|
||||
when is_binary(email_address) and is_binary(token) do
|
||||
confirm_url = url(~p"/confirm_join/#{token}")
|
||||
subject = gettext("Confirm your membership request")
|
||||
|
||||
|
|
@ -29,7 +35,8 @@ defmodule MvWeb.Emails.JoinConfirmationEmail do
|
|||
confirm_url: confirm_url,
|
||||
subject: subject,
|
||||
app_name: Mailer.mail_from() |> elem(0),
|
||||
locale: Gettext.get_locale(MvWeb.Gettext)
|
||||
locale: Gettext.get_locale(MvWeb.Gettext),
|
||||
resend: Keyword.get(opts, :resend, false)
|
||||
}
|
||||
|
||||
email =
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue