diff --git a/packages/hydrooj/src/lib/avatar.ts b/packages/hydrooj/src/lib/avatar.ts index c41b000f3..3396908bd 100644 --- a/packages/hydrooj/src/lib/avatar.ts +++ b/packages/hydrooj/src/lib/avatar.ts @@ -3,7 +3,8 @@ import { md5 } from './crypto'; type AvatarProvider = (src: string, size: number) => string; export const providers: Record = { - gravatar: (email, size) => `//cn.gravatar.com/avatar/${md5((email || '').toString().trim().toLowerCase())}?d=mm&s=${size || 32}`, + gravatar: (email, size) => `${global.Hydro.model.system.get('avatar.gravatar_url')}` + + `${md5((email || '').toString().trim().toLowerCase())}?d=mm&s=${size || 32}`, qq: (id) => `//q1.qlogo.cn/g?b=qq&nk=${(/(\d+)/g.exec(id) || ['', ''])[1]}&s=160`, github: (id, size) => `//github.com/${id}.png?size=${Math.min(size, 460)}`, url: (url) => url, diff --git a/packages/hydrooj/src/model/setting.ts b/packages/hydrooj/src/model/setting.ts index 73bdc2fa0..c5658a20b 100644 --- a/packages/hydrooj/src/model/setting.ts +++ b/packages/hydrooj/src/model/setting.ts @@ -210,6 +210,7 @@ SystemSetting( Setting('setting_limits', 'limit.user_files_size', 128 * 1024 * 1024, 'number', 'limit.user_files_size', 'Max total file size for user'), Setting('setting_limits', 'limit.submission', 30, 'number', 'limit.submission', 'Max submission count per minute'), Setting('setting_limits', 'limit.pretest', 60, 'number', 'limit.pretest', 'Max pretest count per minute'), + Setting('setting_basic', 'avatar.gravatar_url', '//cn.gravatar.com/avatar/', 'text', 'avatar.gravatar_url', 'Gravatar URL Prefix'), Setting('setting_basic', 'default.priv', builtin.PRIV.PRIV_DEFAULT, 'number', 'default.priv', 'Default Privilege', FLAG_PRO), Setting('setting_basic', 'discussion.nodes', builtin.DEFAULT_NODES, 'yaml', 'discussion.nodes', 'Discussion Nodes'), Setting('setting_basic', 'problem.categories', builtin.CATEGORIES, 'yaml', 'problem.categories', 'Problem Categories'), diff --git a/packages/ui-default/locales/zh.yaml b/packages/ui-default/locales/zh.yaml index 690f5ab1f..d2c025347 100644 --- a/packages/ui-default/locales/zh.yaml +++ b/packages/ui-default/locales/zh.yaml @@ -327,6 +327,7 @@ Formula blocks: 公式区块 fs_upload: 上传文件 Gender Visibility: 性别可见性 Gender: 性别 +Gravatar URL Prefix: Gravatar地址前缀 Hard Deadline: 最终截止时间 Hash: 散列 Have ALL PERMISSIONS in this domain: 在此域中拥有全部权限