After "mix phx.gen.auth Admins Admin admins" with added working register and login path.
This commit is contained in:
@ -0,0 +1,32 @@
|
||||
defmodule BeetRoundServerWeb.AdminRegistrationController do
|
||||
use BeetRoundServerWeb, :controller
|
||||
|
||||
alias BeetRoundServer.Admins
|
||||
alias BeetRoundServer.Admins.Admin
|
||||
|
||||
def new(conn, _params) do
|
||||
changeset = Admins.change_admin_email(%Admin{})
|
||||
render(conn, :new, changeset: changeset)
|
||||
end
|
||||
|
||||
def create(conn, %{"admin" => admin_params}) do
|
||||
case Admins.register_admin(admin_params) do
|
||||
{:ok, admin} ->
|
||||
{:ok, _} =
|
||||
Admins.deliver_login_instructions(
|
||||
admin,
|
||||
&url(~p"/admins/log-in/#{&1}")
|
||||
)
|
||||
|
||||
conn
|
||||
|> put_flash(
|
||||
:info,
|
||||
"An email was sent to #{admin.email}, please access it to confirm your account."
|
||||
)
|
||||
|> redirect(to: ~p"/admins/log-in")
|
||||
|
||||
{:error, %Ecto.Changeset{} = changeset} ->
|
||||
render(conn, :new, changeset: changeset)
|
||||
end
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user