The DHCP page edits the reservations per LAN (checked like the module's assertions) and offers active clients for reservation. The web UI checks that need no installed system moved from apply.nix into webui.nix (one node, under a minute); apply.nix shares one apply for the pool change and a reservation. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AeFqV9dZrK6nipHkPfyM4F
32 lines
884 B
HTML
32 lines
884 B
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
{{if .Refresh}}<meta http-equiv="refresh" content="{{.Refresh}}">{{end}}
|
|
<title>{{.Title}} · router</title>
|
|
<link rel="stylesheet" href="/static/style.css">
|
|
</head>
|
|
<body>
|
|
<header>
|
|
<strong>router</strong>
|
|
{{if .LoggedIn}}
|
|
<nav>
|
|
<a href="/">Overview</a>
|
|
<a href="/network">Network</a>
|
|
<a href="/dhcp">DHCP</a>
|
|
<a href="/update">Update</a>
|
|
<a href="/advanced">Advanced</a>
|
|
<form method="post" action="/logout"><input type="hidden" name="csrf" value="{{.CSRF}}"><button class="link">Log out</button></form>
|
|
</nav>
|
|
{{end}}
|
|
</header>
|
|
<main>
|
|
<h1>{{.Title}}</h1>
|
|
{{if .Flash}}<p class="flash">{{.Flash}}</p>{{end}}
|
|
{{if .Error}}<p class="error">{{.Error}}</p>{{end}}
|
|
{{template "content" .}}
|
|
</main>
|
|
</body>
|
|
</html>
|