mirror of
https://gitcode.com/gh_mirrors/hy/Hydro.git
synced 2026-10-19 17:38:19 +08:00
core: add avatar validation
This commit is contained in:
1 parent
5f995f97ad
commit
149c3671f7
2 files changed
+21
-7
No files matched your search
@@ -10,7 +10,7 @@ import {
|
||||
UserNotFoundError, ValidationError, VerifyPasswordError,
|
||||
} from '../error';
|
||||
import { DomainDoc, MessageDoc, Setting } from '../interface';
|
||||
import avatar from '../lib/avatar';
|
||||
import avatar, { validate } from '../lib/avatar';
|
||||
import * as mail from '../lib/mail';
|
||||
import * as useragent from '../lib/useragent';
|
||||
import { verifyTFA } from '../lib/verifyTFA';
|
||||
@@ -373,8 +373,10 @@ class HomeSettingsHandler extends Handler {
|
||||
class HomeAvatarHandler extends Handler {
|
||||
@param('avatar', Types.String, true)
|
||||
async post(domainId: string, input: string) {
|
||||
if (input) await user.setById(this.user._id, { avatar: input });
|
||||
else if (this.request.files.file) {
|
||||
if (input) {
|
||||
if (!validate(input)) throw new ValidationError('avatar');
|
||||
await user.setById(this.user._id, { avatar: input });
|
||||
} else if (this.request.files.file) {
|
||||
const file = this.request.files.file;
|
||||
if (file.size > 8 * 1024 * 1024) throw new ValidationError('file');
|
||||
const ext = path.extname(file.originalFilename);
|
||||
|
||||
Reference in new issue
Block a user