From f6c2ae6267d9d9d4788f3b65eba8c1edbffe47aa Mon Sep 17 00:00:00 2001 From: dan-klasson Date: Mon, 15 Jul 2024 06:02:39 +0800 Subject: [PATCH] docs: Update Confirmation Tutorial docs (#741) * Add missing Swoosh imports * Cast email to string * Fix token vars * Add missing require_atomic * Fix copy & paste naming mistake * Change token to confirm for confirm new user url --- documentation/tutorials/confirmation.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/documentation/tutorials/confirmation.md b/documentation/tutorials/confirmation.md index f00fe0ec..b45049d9 100644 --- a/documentation/tutorials/confirmation.md +++ b/documentation/tutorials/confirmation.md @@ -67,10 +67,11 @@ Next we will define our "sender" module using `Swoosh`: ```elixir defmodule MyApp.NewUserConfirmationSender do use AshAuthentication.Sender + import Swoosh.Email - def send(user, token, _opts) do + def send(user, confirm, _opts) do new() - |> to(user.email) + |> to(to_string(user.email)) |> from({"MyApp Admin", "support@myapp.inc"}) |> subject("Confirm your email address") |> html_body(""" @@ -81,7 +82,7 @@ defmodule MyApp.NewUserConfirmationSender do If it was you, then please click the link below to confirm your identity. If you did not initiate this request then please ignore this email.

- Click here to confirm your account + Click here to confirm your account

""") |> MyApp.Mailer.deliver() @@ -124,12 +125,13 @@ end Next, let's define our new sender: ```elixir -defmodule MyApp.NewUserConfirmationSender do +defmodule MyApp.EmailChangeConfirmationSender do use AshAuthentication.Sender + import Swoosh.Email def send(user, token, _opts) do new() - |> to(user.email) + |> to(to_string(user.email)) |> from({"MyApp Admin", "support@myapp.inc"}) |> subject("Confirm your new email address") |> html_body(""" @@ -139,7 +141,7 @@ defmodule MyApp.NewUserConfirmationSender do You recently changed your email address on MyApp. Please confirm it.

- Click here to confirm your new email address + Click here to confirm your new email address

""") |> MyApp.Mailer.deliver() @@ -168,7 +170,8 @@ defmodule MyApp.Accounts.User do update :confirm_change do argument :confirm, :string, allow_nil?: false, public?: true - + accept [:email] + require_atomic? false change AshAuthentication.AddOn.Confirmation.ConfirmChange change AshAuthentication.GenerateTokenChange change MyApp.UpdateCrmSystem, only_when_valid?: true