webui: Make some user preferences configurable

This extends 09f0237560.

- Extend user_pref with configurable profile fields and automatic migration defaults
- Move user info responses to read from user_pref instead of hardcoded values
- Add admin profile page for editing UI values after login

Signed-off-by: Sean Du <do4suki@gmail.com>
This commit is contained in:
2026-06-04 19:31:27 +08:00
parent 9ad66c2dc6
commit fa2efe4298
14 changed files with 419 additions and 46 deletions
-7
View File
@@ -2,7 +2,6 @@ package user
import (
"honoka-chan/internal/middleware"
usermodel "honoka-chan/internal/model/user"
"honoka-chan/internal/router"
userschema "honoka-chan/internal/schema/user"
"honoka-chan/internal/session"
@@ -15,12 +14,6 @@ func userInfo(ctx *gin.Context) {
ss := session.Get(ctx)
defer ss.Finalize()
pref := usermodel.UserPref{}
_, err := ss.UserEng.Table("user_pref").Where("user_id = ?", ss.UserID).Get(&pref)
if ss.CheckErr(err) {
return
}
userResp := userschema.UserInfoResp{
ResponseData: userschema.UserInfoData{
User: ss.GetUserInfo(),