Replace HTTP basic auth with MCIAS session cookies. Adds mcdsl auth,
csrf, and web packages. Chi router for route-level auth middleware.
Short code redirects (GET /{short}) remain public; all management
pages require MCIAS login. Nord dark theme, layout+page template
pattern matching other platform services.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
31 lines
1.0 KiB
HTML
31 lines
1.0 KiB
HTML
{{define "title"}} — Login{{end}}
|
|
{{define "content"}}
|
|
<div class="auth-header">
|
|
<div class="brand">kls</div>
|
|
<div class="tagline">Link Shortener</div>
|
|
</div>
|
|
<div class="card">
|
|
{{if (ne .Short "")}}
|
|
<div class="error">{{.Short}}</div>
|
|
{{end}}
|
|
<form method="POST" action="/login">
|
|
{{csrfField}}
|
|
<div class="form-group">
|
|
<label for="username">Username</label>
|
|
<input type="text" id="username" name="username" required autofocus>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="password">Password</label>
|
|
<input type="password" id="password" name="password" required>
|
|
</div>
|
|
<div class="form-group">
|
|
<label for="totp_code">TOTP Code (optional)</label>
|
|
<input type="text" id="totp_code" name="totp_code" inputmode="numeric" autocomplete="one-time-code">
|
|
</div>
|
|
<div class="form-actions">
|
|
<button type="submit" class="btn">Login</button>
|
|
</div>
|
|
</form>
|
|
</div>
|
|
{{end}}
|