feat: port basic functionality to elixir

This commit is contained in:
Schuwi
2025-09-14 12:19:44 +02:00
parent 0a6b7e08e2
commit 5e49cb79a0
14 changed files with 1405 additions and 14 deletions

View File

@@ -0,0 +1,27 @@
defmodule ComponentsElixirWeb.AuthController do
use ComponentsElixirWeb, :controller
alias ComponentsElixir.Auth
def authenticate(conn, %{"password" => password}) do
case Auth.authenticate(password) do
{:ok, :authenticated} ->
conn
|> Auth.sign_in()
|> put_flash(:info, "Successfully logged in!")
|> redirect(to: ~p"/")
{:error, :invalid_credentials} ->
conn
|> put_flash(:error, "Invalid password")
|> redirect(to: ~p"/login")
end
end
def logout(conn, _params) do
conn
|> Auth.sign_out()
|> put_flash(:info, "Logged out successfully")
|> redirect(to: ~p"/login")
end
end