After "mix phx.gen.auth Admins Admin admins" with added working register and login path.

This commit is contained in:
2026-02-20 13:09:55 +01:00
parent a47931f40e
commit 53d19a3a18
28 changed files with 2830 additions and 0 deletions

View File

@ -1,6 +1,8 @@
defmodule BeetRoundServerWeb.Router do
use BeetRoundServerWeb, :router
import BeetRoundServerWeb.AdminAuth
import BeetRoundServerWeb.UserAuth
pipeline :browser do
@ -10,6 +12,7 @@ defmodule BeetRoundServerWeb.Router do
plug :put_root_layout, html: {BeetRoundServerWeb.Layouts, :root}
plug :protect_from_forgery
plug :put_secure_browser_headers
plug :fetch_current_scope_for_admin
plug :fetch_current_scope_for_user
end
@ -23,6 +26,12 @@ defmodule BeetRoundServerWeb.Router do
get "/", PageController, :home
end
scope "/api", BeetRoundServerWeb do
pipe_through :api
post "/log_in", AdminController, :log_in
post "/admin_create", AdminController, :create
end
# Other scopes may use custom stacks.
scope "/api", BeetRoundServerWeb do
pipe_through :api
@ -93,4 +102,30 @@ defmodule BeetRoundServerWeb.Router do
get "/log_in/:token", UserSessionController, :login
end
## Authentication routes
scope "/", BeetRoundServerWeb do
pipe_through [:browser, :redirect_if_admin_is_authenticated]
get "/admins/register", AdminRegistrationController, :new
post "/admins/register", AdminRegistrationController, :create
end
scope "/", BeetRoundServerWeb do
pipe_through [:browser, :require_authenticated_admin]
get "/admins/settings", AdminSettingsController, :edit
put "/admins/settings", AdminSettingsController, :update
get "/admins/settings/confirm-email/:token", AdminSettingsController, :confirm_email
end
scope "/", BeetRoundServerWeb do
pipe_through [:browser]
get "/admins/log-in", AdminSessionController, :new
get "/admins/log-in/:token", AdminSessionController, :confirm
post "/admins/log-in", AdminSessionController, :create
delete "/admins/log-out", AdminSessionController, :delete
end
end