hrishikeshchoudhari
PowEmailConfirmation does not kick in
I am using Pow on a blank Phoenix project, with all 4 extensions installed.
When a new user is registered, it is automatically signed in, and the session is set, without waiting for the email confirmation.
Phoenix v1.5.3 (project generated with --live)
Pow v1.0.20
In Feb 2020, I had tried this once, with only the PowEmailConfirmation extension, and it was working as expected.
I inspected every line, and it is per the documentation here - PowEmailConfirmation — Pow v1.0.39
Any help?
My router.ex:
defmodule LiveblogWeb.Router do
use LiveblogWeb, :router
use Pow.Phoenix.Router
use Pow.Extension.Phoenix.Router,
extensions: [PowEmailConfirmation, PowInvitation, PowPersistentSession, PowResetPassword]
pipeline :browser do
plug :accepts, ["html"]
plug :fetch_session
plug :fetch_live_flash
plug :put_root_layout, {LiveblogWeb.LayoutView, :root}
plug :protect_from_forgery
plug :put_secure_browser_headers
end
pipeline :api do
plug :accepts, ["json"]
end
pipeline :protected do
plug Pow.Plug.RequireAuthenticated,
error_handler: Pow.Phoenix.PlugErrorHandler
end
scope "/" do
pipe_through :browser
pow_routes()
pow_extension_routes()
end
scope "/", LiveblogWeb do
pipe_through [:browser, :protected]
# live "/", PageLive, :index
resources "/item", ItemController, except: [:index]
# Add your protected routes here
end
scope "/", LiveblogWeb do
pipe_through :browser
resources "/", ItemController, only: [:index]
end
Any help?
Marked As Solved
hrishikeshchoudhari
Damn! Missed the pluralization for extensions in the config.exs file! Added the missing s and it is working correctly!
Last Post!
danschultzer
Unfortunately not. I would have to build config validation into Pow for that to work, but not sure if it’s a good idea, or possible, as Pow extensions might also use the config. The upside is that this is usually something you would catch very early on, and only has to be fixed once.
Popular in Questions
Other popular topics
Categories:
Sub Categories:
Forums
Popular Tags
- #ecto
- #liveview
- #troubleshooting
- #learning-elixir
- #deployment
- #library
- #erlang
- #testing
- #genserver
- #mix
- #absinthe
- #remote-other
- #otp
- #plug
- #how-to-question
- #macros
- #postgres
- #channels
- #elixirconf
- #exunit
- #discussion
- #code-sync
- #javascript
- #podcasts
- #onsite
- #dialyzer
- #docker
- #authentication
- #umbrella
- #full-time-contract
- #podcasts-by-brainlid
- #ecto-query
- #elixir-ls
- #phoenix_html
- #iex
- #blog-post
- #graphql
- #genstage
- #ai
- #websockets
- #supervisor
- #elixirconf-us
- #advent-of-code
- #distillery
- #processes
- #api
- #forms
- #metaprogramming
- #security
- #hex










