89 lines
3.7 KiB
HTML
89 lines
3.7 KiB
HTML
{{define "admin/layout"}}
|
|
<!DOCTYPE html>
|
|
<html lang="zh-CN">
|
|
<head>
|
|
<meta charset="UTF-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>{{.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-body">
|
|
<div class="toast-container position-fixed top-0 end-0 p-3" style="z-index:9999">
|
|
<div id="adminToast" class="toast" role="alert">
|
|
<div class="d-flex">
|
|
<div class="toast-body"></div>
|
|
<button type="button" class="btn-close btn-close-white me-2 m-auto" data-bs-dismiss="toast"></button>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<header class="admin-topbar">
|
|
<div class="admin-topbar-brand">
|
|
<div class="admin-topbar-mark">姜</div>
|
|
<div>
|
|
<span class="admin-topbar-title">姜十三论坛</span>
|
|
<span class="admin-topbar-sub">管理后台</span>
|
|
</div>
|
|
</div>
|
|
<div class="admin-topbar-actions">
|
|
{{if .CurrentUser}}
|
|
<span class="admin-topbar-user">{{.CurrentUser.Nickname}}</span>
|
|
{{end}}
|
|
<a href="/" class="btn btn-outline-light btn-sm">返回前台</a>
|
|
<button class="btn btn-light btn-sm" onclick="adminLogout()">退出</button>
|
|
</div>
|
|
</header>
|
|
|
|
<div class="admin-shell">
|
|
<aside class="admin-sidebar">
|
|
<div class="admin-sidebar-section">概览</div>
|
|
<a href="/admin/dashboard" class="nav-link {{if eq .ActiveNav "dashboard"}}active{{end}}">仪表盘</a>
|
|
|
|
<div class="admin-sidebar-section">内容</div>
|
|
<a href="/admin/boards" class="nav-link {{if eq .ActiveNav "boards"}}active{{end}}">板块管理</a>
|
|
<a href="/admin/posts" class="nav-link {{if eq .ActiveNav "posts"}}active{{end}}">帖子管理</a>
|
|
<a href="/admin/comments" class="nav-link {{if eq .ActiveNav "comments"}}active{{end}}">评论管理</a>
|
|
|
|
<div class="admin-sidebar-section">系统</div>
|
|
<a href="/admin/users" class="nav-link {{if eq .ActiveNav "users"}}active{{end}}">用户管理</a>
|
|
<a href="/admin/settings" class="nav-link {{if eq .ActiveNav "settings"}}active{{end}}">系统设置</a>
|
|
</aside>
|
|
|
|
<main class="admin-main">
|
|
{{if eq .ActiveNav "dashboard"}}{{template "admin_content_dashboard" .}}
|
|
{{else if eq .ActiveNav "boards"}}{{template "admin_content_boards" .}}
|
|
{{else if eq .ActiveNav "posts"}}{{template "admin_content_posts" .}}
|
|
{{else if eq .ActiveNav "comments"}}{{template "admin_content_comments" .}}
|
|
{{else if eq .ActiveNav "users"}}{{template "admin_content_users" .}}
|
|
{{else if eq .ActiveNav "settings"}}{{template "admin_content_settings" .}}
|
|
{{end}}
|
|
</main>
|
|
</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>
|
|
{{if eq .ActiveNav "boards"}}{{template "admin_scripts_boards" .}}
|
|
{{else if eq .ActiveNav "posts"}}{{template "admin_scripts_posts" .}}
|
|
{{else if eq .ActiveNav "comments"}}{{template "admin_scripts_comments" .}}
|
|
{{else if eq .ActiveNav "users"}}{{template "admin_scripts_users" .}}
|
|
{{else if eq .ActiveNav "settings"}}{{template "admin_scripts_settings" .}}
|
|
{{end}}
|
|
</body>
|
|
</html>
|
|
{{end}}
|
|
|
|
{{define "admin_pagination"}}
|
|
{{if gt .TotalPages 1}}
|
|
<nav class="admin-pagination">
|
|
{{if gt .Page 1}}
|
|
<a class="btn btn-sm btn-outline-secondary" href="?page={{sub .Page 1}}{{if .Keyword}}&keyword={{.Keyword}}{{end}}">上一页</a>
|
|
{{end}}
|
|
<span class="admin-pagination-info">第 {{.Page}} / {{.TotalPages}} 页</span>
|
|
{{if lt .Page .TotalPages}}
|
|
<a class="btn btn-sm btn-outline-secondary" href="?page={{add .Page 1}}{{if .Keyword}}&keyword={{.Keyword}}{{end}}">下一页</a>
|
|
{{end}}
|
|
</nav>
|
|
{{end}}
|
|
{{end}}
|