Files
mce/templates/admin/html/site-settings/index.html
Victor_Jay 0014bdb9ff feat: 品牌CMS配置化 + cookie_secure配置
- config.yaml 新增 server.cookie_secure 配置项
- site_settings 新增 site_name/site_tagline/contact_email 站点信息
- SiteInfo 结构体扩展,支持运行时从 DB 读取站点品牌信息
- cookie.go 使用 cfg.Server.CookieSecure 替代 Mode!=debug 判断
- SetSessionCookie/ClearSessionCookie 支持 siteSettings 运行时覆盖
- 模板替换硬编码 MetaLab → {{.SiteName}}(nav/header/footer/home/login/register/guidelines/admin,12+处)
- 管理后台站点设置页新增站点名称/标语/联系邮箱输入项
- 页脚版权年份改为动态 CurrentYear
- 注册成功消息 CMS 化(后端+前端)
2026-06-21 23:34:14 +08:00

173 lines
9.0 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{{template "admin/layout/base.html" .}}
<div class="page-header">
<h1>站点设置</h1>
<p class="page-desc">管理站点基本配置、维护开关、审核开关与注册策略</p>
</div>
<!-- 基本设置 -->
<div class="settings-section">
<div class="section-title">基本设置</div>
<div class="section-body">
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">站点名称</span>
<span class="setting-desc">全站品牌名(导航栏、标题、页脚等位置)</span>
</div>
<div class="setting-input-wrap">
<input type="text" id="setting-site-name" class="setting-input" placeholder="MetaLab" value="{{.SiteName}}">
<button class="btn btn-sm btn-primary btn-save" data-key="site.name" data-input="setting-site-name">保存</button>
</div>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">站点标语</span>
<span class="setting-desc">首页 Hero 区域的副标题</span>
</div>
<div class="setting-input-wrap">
<input type="text" id="setting-site-tagline" class="setting-input" placeholder="下一代开发者社区" value="{{.SiteTagline}}">
<button class="btn btn-sm btn-primary btn-save" data-key="site.tagline" data-input="setting-site-tagline">保存</button>
</div>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">联系邮箱</span>
<span class="setting-desc">申诉/联系邮箱,显示在社区准则等页面</span>
</div>
<div class="setting-input-wrap">
<input type="text" id="setting-site-email" class="setting-input" placeholder="metazone@foxmail.com" value="{{.ContactEmail}}">
<button class="btn btn-sm btn-primary btn-save" data-key="site.contact_email" data-input="setting-site-email">保存</button>
</div>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">附加信息</span>
<span class="setting-desc">页脚附加信息,留空则隐藏(如 "Framework: MetaGenesis"</span>
</div>
<div class="setting-input-wrap">
<input type="text" id="setting-site-framework" class="setting-input" placeholder="留空则不显示" value="{{.Framework}}">
<button class="btn btn-sm btn-primary btn-save" data-key="site.framework" data-input="setting-site-framework">保存</button>
</div>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">版权起始年份</span>
<span class="setting-desc">页脚版权标起始年(如 2024 → © 2024-当前年)</span>
</div>
<div class="setting-input-wrap">
<input type="text" id="setting-site-copyright" class="setting-input" placeholder="2024" value="{{.CopyrightStart}}">
<button class="btn btn-sm btn-primary btn-save" data-key="site.copyright_start" data-input="setting-site-copyright">保存</button>
</div>
</div>
</div>
</div>
<!-- 维护设置 -->
<div class="settings-section">
<div class="section-title">维护设置</div>
<div class="section-body">
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">启用维护模式</span>
<span class="setting-desc">开启后仅站长可登录和访问,其他用户将看到维护提示</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="maintenance-enabled" data-key="maintenance.enabled">
<span class="toggle-slider"></span>
</label>
</div>
</div>
</div>
<!-- 注册设置 -->
<div class="settings-section">
<div class="section-title">注册设置</div>
<div class="section-body">
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">允许注册</span>
<span class="setting-desc">关闭后,新用户将无法注册</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="registration-enabled" data-key="registration.enabled">
<span class="toggle-slider"></span>
</label>
</div>
</div>
</div>
<!-- 审核设置 -->
<div class="settings-section">
<div class="section-title">审核设置</div>
<div class="section-body">
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">启用审核系统</span>
<span class="setting-desc">启用后,用户名、头像、签名修改将进入审核流程</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="audit-enabled" data-key="audit.enabled">
<span class="toggle-slider"></span>
</label>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">用户名审核</span>
<span class="setting-desc">更改用户名需要管理员审核</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="audit-username" data-key="audit.username_audit">
<span class="toggle-slider"></span>
</label>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">头像审核</span>
<span class="setting-desc">更改头像需要管理员审核</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="audit-avatar" data-key="audit.avatar_audit">
<span class="toggle-slider"></span>
</label>
</div>
<div class="setting-item">
<div class="setting-info">
<span class="setting-label">签名审核</span>
<span class="setting-desc">更改个人签名需要管理员审核</span>
</div>
<label class="toggle-switch">
<input type="checkbox" id="audit-bio" data-key="audit.bio_audit">
<span class="toggle-slider"></span>
</label>
</div>
</div>
</div>
<!-- 内容管理 -->
<div class="settings-section">
<div class="section-title">内容管理</div>
<div class="section-body">
<div class="setting-item setting-item-vertical">
<div class="setting-info">
<span class="setting-label">社区准则</span>
<span class="setting-desc">注册时需用户阅读并同意,支持 HTML 格式</span>
</div>
<div class="setting-input-block">
<textarea id="setting-site-guidelines" class="setting-textarea" rows="12" placeholder="留空则使用默认准则文件"></textarea>
<button class="btn btn-sm btn-primary btn-save-block" data-key="site.guidelines" data-input="setting-site-guidelines">保存准则</button>
</div>
</div>
</div>
</div>
<!-- 通用设置 -->
<div class="settings-section">
<div class="section-title">其他设置</div>
<div class="section-body" id="general-settings">
<div class="settings-empty" id="settings-empty">加载中...</div>
</div>
</div>
{{template "admin/layout/footer.html" .}}