Files
cmroubao/backend-api/internal/transport/webui/templates/login.gohtml
T

56 lines
2.2 KiB
Go Template

{{define "login"}}
<!doctype html>
<html lang="zh-CN">
<head>
<title>{{.Page.Title}} - 采购任务管理</title>
{{template "document-head" .}}
</head>
<body class="login-body">
<main id="main-content" class="login-page">
<a class="login-brand" href="/login" aria-label="采购任务管理登录">
<span class="brand-mark" aria-hidden="true">采</span>
<span>采购任务管理</span>
</a>
<section class="login-panel" aria-labelledby="login-title">
<h1 id="login-title">管理端登录</h1>
<p class="subtitle">使用采购管理员账号继续</p>
{{if .Message}}
<div class="notice notice-error" role="alert" tabindex="-1" data-error-summary>
{{.Message}}
</div>
{{end}}
<form method="post" action="/login" novalidate data-loading-form>
<input type="hidden" name="csrf_token" value="{{.CSRFToken}}">
<input type="hidden" name="next" value="{{.Next}}">
<div class="field">
<label for="username">账号</label>
<input id="username" name="username" value="{{.Username}}"
autocomplete="username" autofocus required
aria-describedby="username-error"
{{if .UsernameError}}aria-invalid="true" data-error-field{{end}}>
<p id="username-error" class="field-error">{{.UsernameError}}</p>
</div>
<div class="field">
<label for="login-password">密码</label>
<div class="password-field">
<input id="login-password" name="password" type="password"
autocomplete="current-password" required
aria-describedby="password-error"
{{if .PasswordError}}aria-invalid="true" data-error-field{{end}}>
<button class="button password-toggle" type="button"
aria-controls="login-password" aria-pressed="false"
data-password-toggle>显示</button>
</div>
<p id="password-error" class="field-error">{{.PasswordError}}</p>
</div>
<button class="button primary login-submit" type="submit"
data-loading-label="正在登录…">登录</button>
</form>
</section>
</main>
</body>
</html>
{{end}}