Packages
pow
1.0.6
1.0.39
1.0.38
1.0.37
1.0.36
1.0.35
1.0.34
1.0.33
1.0.32
1.0.31
1.0.30
1.0.29
1.0.28
1.0.27
1.0.26
1.0.25
1.0.24
1.0.23
1.0.22
1.0.21
1.0.20
1.0.19
1.0.18
1.0.17
1.0.16
1.0.15
1.0.14
1.0.13
1.0.12
1.0.11
1.0.10
1.0.9
1.0.8
1.0.7
1.0.6
1.0.5
1.0.4
1.0.3
1.0.2
1.0.1
1.0.0
1.0.0-rc.4
1.0.0-rc.3
1.0.0-rc.2
1.0.0-rc.1
1.0.0-rc.0
0.1.0-rc.1
0.1.0-alpha.8
0.1.0-alpha.7
retired
0.1.0-alpha.6
0.1.0-alpha.5
0.1.0-alpha.4
0.1.0-alpha.3
0.1.0-alpha.2
0.1.0-alpha.1
0.1.0-alpha
Robust user authentication solution
Security advisory:
This version has known vulnerabilities.
View advisories
Current section
Files
Jump to
Current section
Files
lib/extensions/email_confirmation/ecto/context.ex
defmodule PowEmailConfirmation.Ecto.Context do
@moduledoc false
alias Ecto.Changeset
alias Pow.{Config, Ecto.Context}
alias PowEmailConfirmation.Ecto.Schema
@doc """
Finds a user by the `email_confirmation_token` column.
"""
@spec get_by_confirmation_token(binary(), Config.t()) :: map() | nil
def get_by_confirmation_token(token, config),
do: Context.get_by([email_confirmation_token: token], config)
@doc """
Updates `email_confirmed_at` if it hasn't already been set.
"""
@spec confirm_email(map(), Config.t()) :: {:ok, map()} | {:error, Changeset.t()}
def confirm_email(user, config) do
user
|> Schema.confirm_email_changeset()
|> Context.do_update(config)
end
end