♻️ refactor(handlers): status 与 review 页面模板化
- HTML 提取至 templates/status.html、templates/review.html(go:embed 内嵌) - status.go 1022→271 行、review.go 1281→438 行,动态数据全部经 html/template 按上下文自动转义 - 评论循环/作者徽章/贴纸/图片条件渲染翻译为模板 range/if;emojiMap 以 template.JS 注入 - 与旧版渲染输出实测对比:22 条评论结构完全一致;差异仅为 JS 上下文安全转义(& 等)与 html/template 剥除 CSS 注释,均无功能影响 - 其余文件为 gofmt 顺手格式化
This commit is contained in:
1 parent
ad6d28fd85
commit
5bcc8a962e
29 files changed
+1267
-2893
No files matched your search
@@ -379,7 +379,7 @@ func CleanupAllCache() error {
|
||||
freeBytes := freelistCount * pageSize
|
||||
// 阈值:空闲空间超过 5MB 时才执行压缩
|
||||
const vacuumThreshold = 5 * 1024 * 1024 // 5MB
|
||||
|
||||
|
||||
if freeBytes >= vacuumThreshold {
|
||||
cacheLogger.Info(fmt.Sprintf("空闲空间 %.2f MB,开始执行压缩...", float64(freeBytes)/(1024*1024)))
|
||||
_, err = cacheDB.Exec("VACUUM")
|
||||
@@ -550,7 +550,7 @@ func GetDatabaseStats() (map[string]interface{}, error) {
|
||||
if err == nil {
|
||||
stats["page_count"] = pageCount
|
||||
}
|
||||
|
||||
|
||||
err = cacheDB.QueryRow("PRAGMA page_size").Scan(&pageSize)
|
||||
if err == nil {
|
||||
stats["page_size"] = pageSize
|
||||
@@ -589,7 +589,7 @@ func SaveStatistics(stats map[string]int64) error {
|
||||
`), stats["total"], stats["search"], stats["detail"], stats["catalog"],
|
||||
stats["content"], stats["manga"], stats["audio"], stats["video"], stats["category"],
|
||||
time.Now().Unix())
|
||||
|
||||
|
||||
if err != nil {
|
||||
cacheLogger.Error("保存统计数据失败: " + err.Error())
|
||||
return err
|
||||
@@ -605,13 +605,13 @@ func LoadStatistics() (map[string]int64, error) {
|
||||
}
|
||||
|
||||
var total, search, detail, catalog, content, manga, audio, video, category int64
|
||||
|
||||
|
||||
err := cacheDB.QueryRow(`
|
||||
SELECT total_requests, search_requests, detail_requests, catalog_requests,
|
||||
content_requests, manga_requests, audio_requests, video_requests, category_requests
|
||||
FROM statistics WHERE id = 1
|
||||
`).Scan(&total, &search, &detail, &catalog, &content, &manga, &audio, &video, &category)
|
||||
|
||||
|
||||
if err == sql.ErrNoRows {
|
||||
// 没有数据,返回空统计
|
||||
return map[string]int64{
|
||||
@@ -619,7 +619,7 @@ func LoadStatistics() (map[string]int64, error) {
|
||||
"content": 0, "manga": 0, "audio": 0, "video": 0, "category": 0,
|
||||
}, nil
|
||||
}
|
||||
|
||||
|
||||
if err != nil {
|
||||
cacheLogger.Error("加载统计数据失败: " + err.Error())
|
||||
return nil, err
|
||||
@@ -638,4 +638,4 @@ func LoadStatistics() (map[string]int64, error) {
|
||||
}
|
||||
|
||||
return stats, nil
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user