From 38fa2065831b5f55be0d7f30f19a62c967397208 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 10 Nov 2017 14:48:08 +0100 Subject: Remove references to author --- server/helpers/custom-validators/video-accounts.ts | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 server/helpers/custom-validators/video-accounts.ts (limited to 'server/helpers/custom-validators/video-accounts.ts') diff --git a/server/helpers/custom-validators/video-accounts.ts b/server/helpers/custom-validators/video-accounts.ts new file mode 100644 index 000000000..3f3e9edd1 --- /dev/null +++ b/server/helpers/custom-validators/video-accounts.ts @@ -0,0 +1,45 @@ +import * as Promise from 'bluebird' +import * as validator from 'validator' +import * as express from 'express' +import 'express-validator' + +import { database as db } from '../../initializers' +import { AccountInstance } from '../../models' +import { logger } from '../logger' + +import { isUserUsernameValid } from './users' + +function isVideoAccountNameValid (value: string) { + return isUserUsernameValid(value) +} + +function checkVideoAccountExists (id: string, res: express.Response, callback: () => void) { + let promise: Promise + if (validator.isInt(id)) { + promise = db.Account.load(+id) + } else { // UUID + promise = db.Account.loadByUUID(id) + } + + promise.then(account => { + if (!account) { + return res.status(404) + .json({ error: 'Video account not found' }) + .end() + } + + res.locals.account = account + callback() + }) + .catch(err => { + logger.error('Error in video account request validator.', err) + return res.sendStatus(500) + }) +} + +// --------------------------------------------------------------------------- + +export { + checkVideoAccountExists, + isVideoAccountNameValid +} -- cgit v1.2.3