使用了AI重构项目,并完善了一部分后台问题
This commit is contained in:
@@ -8,51 +8,34 @@ import (
|
||||
"github.com/gin-gonic/gin"
|
||||
)
|
||||
|
||||
// GetFrontendConfig 获取前端配置(用于index.html等)
|
||||
// GetFrontendConfig returns only public head, runtime and tracker settings.
|
||||
func GetFrontendConfig(db *database.Database) gin.HandlerFunc {
|
||||
return func(c *gin.Context) {
|
||||
ctx := c.Request.Context()
|
||||
config, err := db.Client.SiteConfig.Get(ctx, 1)
|
||||
settings, err := db.LoadSiteSettings(c.Request.Context())
|
||||
if err != nil {
|
||||
// 如果不存在,返回默认值
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"title": "个人主页",
|
||||
"keywords": "个人主页,Vue3",
|
||||
"description": "一个基于Vue3的个人主页",
|
||||
"favicon": "/favicon.ico",
|
||||
"umamiScript": "",
|
||||
"umamiWebsiteId": "",
|
||||
"iconLibrary": "//lib.baomitu.com/font-awesome/6.5.0/css/all.min.css",
|
||||
"fontLibrary": "",
|
||||
})
|
||||
c.JSON(http.StatusInternalServerError, gin.H{"error": "加载前端配置失败"})
|
||||
return
|
||||
}
|
||||
|
||||
pageTitle := config.PageTitle
|
||||
if pageTitle == "" {
|
||||
pageTitle = "个人主页"
|
||||
}
|
||||
favicon := config.Favicon
|
||||
if favicon == "" {
|
||||
favicon = "/favicon.ico"
|
||||
}
|
||||
iconLibrary := config.IconLibrary
|
||||
if iconLibrary == "" {
|
||||
iconLibrary = "//lib.baomitu.com/font-awesome/6.5.0/css/all.min.css"
|
||||
}
|
||||
|
||||
// 确保返回完整的配置信息,包括站点名称和URL
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"title": pageTitle,
|
||||
"siteName": config.SiteName,
|
||||
"siteURL": config.SiteURL,
|
||||
"keywords": config.SiteKeywords,
|
||||
"description": config.SiteDescription,
|
||||
"favicon": favicon,
|
||||
"umamiScript": config.UmamiScript,
|
||||
"umamiWebsiteId": config.UmamiWebsiteID,
|
||||
"iconLibrary": iconLibrary,
|
||||
"fontLibrary": config.FontLibrary,
|
||||
"title": settings.PageTitle,
|
||||
"siteName": settings.SiteName,
|
||||
"siteURL": settings.SiteURL,
|
||||
"keywords": settings.SiteKeywords,
|
||||
"description": settings.SiteDescription,
|
||||
"favicon": settings.Favicon,
|
||||
"iconLibrary": settings.IconLibrary,
|
||||
"fontLibrary": settings.FontLibrary,
|
||||
"analyticsProvider": settings.AnalyticsProvider,
|
||||
"umamiScript": settings.UmamiScript,
|
||||
"umamiScriptUrl": settings.UmamiScript,
|
||||
"umamiWebsiteId": settings.UmamiWebsiteID,
|
||||
"umamiDomains": settings.UmamiDomains,
|
||||
"umamiDoNotTrack": settings.UmamiDoNotTrack,
|
||||
"umamiExcludeSearch": settings.UmamiExcludeSearch,
|
||||
"umamiExcludeHash": settings.UmamiExcludeHash,
|
||||
"umamiPerformance": settings.UmamiPerformance,
|
||||
"umamiTag": settings.UmamiTag,
|
||||
"umamiTrackerOptions": gin.H{"domains": settings.UmamiDomains, "doNotTrack": settings.UmamiDoNotTrack, "excludeSearch": settings.UmamiExcludeSearch, "excludeHash": settings.UmamiExcludeHash, "performance": settings.UmamiPerformance, "tag": settings.UmamiTag},
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user