-import * as express from 'express'
+import express from 'express'
import { body, header, param, query, ValidationChain } from 'express-validator'
import { getResumableUploadPath } from '@server/helpers/upload'
import { isAbleToUploadVideo } from '@server/lib/user'
import { ExpressPromiseHandler } from '@server/types/express'
import { MUserAccountId, MVideoFullLight } from '@server/types/models'
import { ServerErrorCode, UserRight, VideoPrivacy } from '../../../../shared'
-import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
+import { HttpStatusCode } from '../../../../shared/models/http/http-error-codes'
import {
exists,
isBooleanValid,
isDateValid,
isFileFieldValid,
- isIdOrUUIDValid,
isIdValid,
isUUIDValid,
toArray,
checkUserCanManageVideo,
doesVideoChannelOfAccountExist,
doesVideoExist,
- doesVideoFileOfVideoExist
+ doesVideoFileOfVideoExist,
+ isValidVideoIdParam
} from '../shared'
const videosAddLegacyValidator = getCommonVideoEditAttributes().concat([
// multer required unsetting the Content-Type, now we can set it for node-uploadx
req.headers['content-type'] = 'application/json; charset=utf-8'
// place previewfile in metadata so that uploadx saves it in .META
- if (req.files['previewfile']) req.body.previewfile = req.files['previewfile']
+ if (req.files?.['previewfile']) req.body.previewfile = req.files['previewfile']
return next()
}
])
const videosUpdateValidator = getCommonVideoEditAttributes().concat([
- param('id').custom(isIdOrUUIDValid).not().isEmpty().withMessage('Should have a valid id'),
+ isValidVideoIdParam('id'),
+
body('name')
.optional()
.trim()
authenticateInQuery = false
) => {
return [
- param('id').custom(isIdOrUUIDValid).not().isEmpty().withMessage('Should have a valid id'),
+ isValidVideoIdParam('id'),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
logger.debug('Checking videosGet parameters', { parameters: req.params })
const videosDownloadValidator = videosCustomGetValidator('all', true)
const videoFileMetadataGetValidator = getCommonVideoEditAttributes().concat([
- param('id').custom(isIdOrUUIDValid).not().isEmpty().withMessage('Should have a valid id'),
- param('videoFileId').custom(isIdValid).not().isEmpty().withMessage('Should have a valid videoFileId'),
+ isValidVideoIdParam('id'),
+
+ param('videoFileId')
+ .custom(isIdValid).not().isEmpty().withMessage('Should have a valid videoFileId'),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
logger.debug('Checking videoFileMetadataGet parameters', { parameters: req.params })
])
const videosRemoveValidator = [
- param('id').custom(isIdOrUUIDValid).not().isEmpty().withMessage('Should have a valid id'),
+ isValidVideoIdParam('id'),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
logger.debug('Checking videosRemove parameters', { parameters: req.params })