Fold RequireLogin plug into Auth module
This commit is contained in:
@@ -1,4 +1,8 @@
|
||||
defmodule MusicLibraryWeb.Auth do
|
||||
use Gettext, backend: MusicLibraryWeb.Gettext
|
||||
import Plug.Conn
|
||||
import Phoenix.Controller, only: [put_flash: 3, redirect: 2]
|
||||
|
||||
def correct_login_password?(password) do
|
||||
Plug.Crypto.secure_compare(correct_login_password(), password)
|
||||
end
|
||||
@@ -7,4 +11,15 @@ defmodule MusicLibraryWeb.Auth do
|
||||
Application.get_env(:music_library, MusicLibraryWeb)
|
||||
|> Keyword.fetch!(:login_password)
|
||||
end
|
||||
|
||||
def require_logged_in(conn, _opts) do
|
||||
if get_session(conn, :logged_in) do
|
||||
conn
|
||||
else
|
||||
conn
|
||||
|> put_flash(:error, gettext("You must be logged in to access this page"))
|
||||
|> redirect(to: "/login")
|
||||
|> halt()
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user