feat: 添加站点设置中的 favicon URL 支持,更新相关接口和页面
All checks were successful
ui-regression / playwright-regression (push) Successful in 6m20s
docker-images / resolve-build-targets (push) Successful in 6s
docker-images / build-and-push (admin) (push) Successful in 25s
docker-images / build-and-push (backend) (push) Successful in 35s
docker-images / build-and-push (frontend) (push) Successful in 1m46s
docker-images / submit-indexnow (push) Successful in 15s

This commit is contained in:
2026-04-03 02:13:27 +08:00
parent 27d0827f3e
commit 36d505ece6
19 changed files with 143 additions and 5 deletions

View File

@@ -111,6 +111,7 @@ async fn sync_site_settings(ctx: &AppContext, base: &Path) -> Result<()> {
let music_enabled = seed["music_enabled"].as_bool().or(Some(true));
let maintenance_mode_enabled = seed["maintenance_mode_enabled"].as_bool().or(Some(false));
let maintenance_access_code = as_optional_string(&seed["maintenance_access_code"]);
let seo_favicon_url = as_optional_string(&seed["seo_favicon_url"]);
let comment_verification_mode = as_optional_string(&seed["comment_verification_mode"]);
let subscription_verification_mode =
as_optional_string(&seed["subscription_verification_mode"]);
@@ -196,6 +197,9 @@ async fn sync_site_settings(ctx: &AppContext, base: &Path) -> Result<()> {
if is_blank(&existing.maintenance_access_code) {
model.maintenance_access_code = Set(maintenance_access_code.clone());
}
if is_blank(&existing.seo_favicon_url) {
model.seo_favicon_url = Set(seo_favicon_url.clone());
}
if existing.ai_enabled.is_none() {
model.ai_enabled = Set(seed["ai_enabled"].as_bool());
}
@@ -278,6 +282,7 @@ async fn sync_site_settings(ctx: &AppContext, base: &Path) -> Result<()> {
music_enabled: Set(music_enabled),
maintenance_mode_enabled: Set(maintenance_mode_enabled),
maintenance_access_code: Set(maintenance_access_code),
seo_favicon_url: Set(seo_favicon_url),
ai_enabled: Set(seed["ai_enabled"].as_bool()),
paragraph_comments_enabled: Set(seed["paragraph_comments_enabled"]
.as_bool()