feat(server): session-based auth plug + login controller/template
This commit is contained in:
parent
3123743c1c
commit
4538945b85
4 changed files with 95 additions and 0 deletions
43
server/lib/server_web/controllers/auth_html/login.html.heex
Normal file
43
server/lib/server_web/controllers/auth_html/login.html.heex
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
||||
<meta name="csrf-token" content={Phoenix.Controller.get_csrf_token()} />
|
||||
<title>Sign in · Proxmox Monitor</title>
|
||||
<link phx-track-static rel="stylesheet" href={~p"/assets/app.css"} />
|
||||
</head>
|
||||
<body class="bg-white">
|
||||
<div class="min-h-screen flex items-center justify-center">
|
||||
<div class="max-w-sm w-full space-y-6 p-6 border border-zinc-200 rounded-lg shadow">
|
||||
<h1 class="text-xl font-semibold text-zinc-800">Proxmox Monitor</h1>
|
||||
|
||||
<%= if @error do %>
|
||||
<p class="text-sm text-red-600">{@error}</p>
|
||||
<% end %>
|
||||
|
||||
<form method="post" action="/login" class="space-y-4">
|
||||
<input type="hidden" name="_csrf_token" value={Phoenix.Controller.get_csrf_token()} />
|
||||
|
||||
<label class="block">
|
||||
<span class="text-sm text-zinc-700">Password</span>
|
||||
<input
|
||||
name="password"
|
||||
type="password"
|
||||
required
|
||||
autofocus
|
||||
class="mt-1 block w-full rounded-md border-zinc-300 focus:border-zinc-400 focus:ring-0"
|
||||
/>
|
||||
</label>
|
||||
|
||||
<button
|
||||
type="submit"
|
||||
class="w-full rounded-md bg-zinc-900 text-white py-2 hover:bg-zinc-700"
|
||||
>
|
||||
Sign in
|
||||
</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Loading…
Add table
Add a link
Reference in a new issue