🧑‍💻 Add kernel API /api/ui/reloadTheme (#17206)

This commit is contained in:
Jeffrey Chen
2026-03-13 20:37:28 +08:00
committed by GitHub
parent fa44496086
commit a9d1d7eeac
3 changed files with 12 additions and 2 deletions

View File

@@ -525,6 +525,7 @@ func ServeAPI(ginServer *gin.Engine) {
ginServer.Handle("POST", "/api/ui/reloadUI", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadUI)
ginServer.Handle("POST", "/api/ui/reloadIcon", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadIcon)
ginServer.Handle("POST", "/api/ui/reloadTheme", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadTheme)
ginServer.Handle("POST", "/api/ui/reloadAttributeView", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadAttributeView)
ginServer.Handle("POST", "/api/ui/reloadProtyle", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadProtyle)
ginServer.Handle("POST", "/api/ui/reloadFiletree", model.CheckAuth, model.CheckAdminRole, model.CheckReadonly, reloadFiletree)

View File

@@ -77,4 +77,13 @@ func reloadIcon(c *gin.Context) {
defer c.JSON(http.StatusOK, ret)
model.LoadIcons()
util.BroadcastByType("main", "setAppearance", 0, "", model.Conf.Appearance)
}
func reloadTheme(c *gin.Context) {
ret := gulu.Ret.NewResult()
defer c.JSON(http.StatusOK, ret)
model.LoadThemes()
util.BroadcastByType("main", "setAppearance", 0, "", model.Conf.Appearance)
}

View File

@@ -46,7 +46,7 @@ func InitAppearance() {
return
}
loadThemes()
LoadThemes()
LoadIcons()
Conf.m.Lock()
@@ -111,7 +111,7 @@ func containTheme(name string, themes []*conf.AppearanceTheme) bool {
return false
}
func loadThemes() {
func LoadThemes() {
themeDirs, err := os.ReadDir(util.ThemesPath)
if err != nil {
logging.LogErrorf("read appearance themes folder failed: %s", err)