50 lines
2.0 KiB
HTML
50 lines
2.0 KiB
HTML
{{define "admin/login.html"}}
|
|
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>后台登录 - 姜十三论坛</title>
|
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="/legacy/css/style.css" rel="stylesheet">
|
|
</head>
|
|
<body class="admin-login-page">
|
|
<div class="admin-login-card">
|
|
<div class="admin-login-mark">姜</div>
|
|
<h4 class="text-center mb-1">管理后台登录</h4>
|
|
<p class="login-slogan text-center mb-4">姜十三论坛 · 仅管理员可访问</p>
|
|
{{if eq .QueryBanned "1"}}
|
|
<div class="alert alert-warning small py-2">账号已被禁言,无法登录后台</div>
|
|
{{end}}
|
|
<form id="adminLoginForm">
|
|
<div class="mb-2">
|
|
<label class="form-label small">管理员账号</label>
|
|
<input type="text" name="username" class="form-control" placeholder="用户名" required autofocus>
|
|
</div>
|
|
<div class="mb-3">
|
|
<label class="form-label small">密码</label>
|
|
<input type="password" name="password" class="form-control" placeholder="密码" required>
|
|
</div>
|
|
<button type="submit" class="btn btn-success w-100" id="loginBtn">登录</button>
|
|
</form>
|
|
<p class="text-center mt-3 mb-0 small">
|
|
<a href="/" class="text-muted">← 返回论坛前台</a>
|
|
</p>
|
|
</div>
|
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js"></script>
|
|
<script src="/legacy/js/app.js"></script>
|
|
<script>
|
|
document.getElementById('adminLoginForm').addEventListener('submit', function(e) {
|
|
e.preventDefault();
|
|
var btn = document.getElementById('loginBtn');
|
|
setBtnLoading(btn, true);
|
|
adminFetch('/admin/api/login', { method: 'POST', body: new FormData(this) })
|
|
.then(function() { location.href = '/admin/dashboard'; })
|
|
.catch(function(err) { alert(err.message); })
|
|
.finally(function() { setBtnLoading(btn, false); });
|
|
});
|
|
</script>
|
|
</body>
|
|
</html>
|
|
{{end}}
|