diff --git a/locales/en-US.yml b/locales/en-US.yml index de2fc2169..92d658b2e 100644 --- a/locales/en-US.yml +++ b/locales/en-US.yml @@ -915,6 +915,7 @@ caption: "Auto Caption" splash: "Splash Screen" updateAvailable: "There might be an update available!" swipeOnDesktop: "Allow mobile-style swiping on desktop" +logoUrl: "Logo URL" _sensitiveMediaDetection: description: "Reduces the effort of server moderation through automatically recognizing NSFW media via Machine Learning. This will slightly increase the load on the server." diff --git a/locales/ja-JP.yml b/locales/ja-JP.yml index c8a1b4374..f4a9c3c44 100644 --- a/locales/ja-JP.yml +++ b/locales/ja-JP.yml @@ -915,6 +915,7 @@ caption: "自動キャプション" splash: "スプラッシュスクリーン" updateAvailable: "アップデートがありますよ" swipeOnDesktop: "デスクトップでモバイルスタイルのスワイプを可能にする" +logoUrl: "ロゴのURL" _sensitiveMediaDetection: description: "機械学習を使って自動でセンシティブなメディアを検出し、モデレーションに役立てることができます。サーバーの負荷が少し増えます。" diff --git a/packages/backend/src/server/api/endpoints/admin/update-meta.ts b/packages/backend/src/server/api/endpoints/admin/update-meta.ts index 0220c4a7c..3e061a9e0 100644 --- a/packages/backend/src/server/api/endpoints/admin/update-meta.ts +++ b/packages/backend/src/server/api/endpoints/admin/update-meta.ts @@ -45,6 +45,7 @@ export const paramDef = { themeColor: { type: 'string', nullable: true, pattern: '^#[0-9a-fA-F]{6}$' }, mascotImageUrl: { type: 'string', nullable: true }, bannerUrl: { type: 'string', nullable: true }, + logoUrl: { type: 'string', nullable: true }, errorImageUrl: { type: 'string', nullable: true }, iconUrl: { type: 'string', nullable: true }, backgroundImageUrl: { type: 'string', nullable: true }, @@ -193,6 +194,10 @@ export default define(meta, paramDef, async (ps, me) => { set.bannerUrl = ps.bannerUrl; } + if (ps.logoUrl !== undefined) { + set.logoUrl = ps.logoUrl; + } + if (ps.iconUrl !== undefined) { set.iconUrl = ps.iconUrl; } diff --git a/packages/client/src/pages/admin/settings.vue b/packages/client/src/pages/admin/settings.vue index 55aebbf7e..206858087 100644 --- a/packages/client/src/pages/admin/settings.vue +++ b/packages/client/src/pages/admin/settings.vue @@ -71,6 +71,11 @@ + + + + + @@ -191,6 +196,7 @@ let maintainerName: string | null = $ref(null); let maintainerEmail: string | null = $ref(null); let iconUrl: string | null = $ref(null); let bannerUrl: string | null = $ref(null); +let logoUrl: string | null = $ref(null); let backgroundImageUrl: string | null = $ref(null); let themeColor: any = $ref(null); let defaultLightTheme: any = $ref(null); @@ -220,6 +226,7 @@ async function init() { tosUrl = meta.tosUrl; iconUrl = meta.iconUrl; bannerUrl = meta.bannerUrl; + logoUrl = meta.logoUrl; backgroundImageUrl = meta.backgroundImageUrl; themeColor = meta.themeColor; defaultLightTheme = meta.defaultLightTheme; @@ -252,6 +259,7 @@ function save() { tosUrl, iconUrl, bannerUrl, + logoUrl, backgroundImageUrl, themeColor: themeColor === '' ? null : themeColor, defaultLightTheme: defaultLightTheme === '' ? null : defaultLightTheme,