1
0
Fork 0
mirror of https://github.com/Chocobozzz/PeerTube.git synced 2025-10-05 02:39:33 +02:00

replace numbers with typed http status codes (#3409)

This commit is contained in:
Rigel Kent 2020-12-07 14:32:36 +01:00 committed by GitHub
parent adc1f09c0d
commit 2d53be0267
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
149 changed files with 1721 additions and 1108 deletions

View file

@ -6,6 +6,7 @@ import { AbuseModel } from '@server/models/abuse/abuse'
import { AbuseMessageModel } from '@server/models/abuse/abuse-message'
import { getServerActor } from '@server/models/application/application'
import { abusePredefinedReasonsMap } from '@shared/core-utils/abuse'
import { HttpStatusCode } from '@shared/core-utils/miscs/http-error-codes'
import { AbuseCreate, AbuseState, UserRight } from '../../../shared'
import { getFormattedObjects } from '../../helpers/utils'
import { sequelizeTypescript } from '../../initializers/database'
@ -141,7 +142,7 @@ async function updateAbuse (req: express.Request, res: express.Response) {
// Do not send the delete to other instances, we updated OUR copy of this abuse
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function deleteAbuse (req: express.Request, res: express.Response) {
@ -153,7 +154,7 @@ async function deleteAbuse (req: express.Request, res: express.Response) {
// Do not send the delete to other instances, we delete OUR copy of this abuse
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function reportAbuse (req: express.Request, res: express.Response) {
@ -243,5 +244,5 @@ async function deleteAbuseMessage (req: express.Request, res: express.Response)
return abuseMessage.destroy({ transaction: t })
})
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}

View file

@ -2,8 +2,9 @@ import * as express from 'express'
import { asyncMiddleware, authenticate } from '../../middlewares'
import { bulkRemoveCommentsOfValidator } from '@server/middlewares/validators/bulk'
import { VideoCommentModel } from '@server/models/video/video-comment'
import { BulkRemoveCommentsOfBody } from '@shared/models/bulk/bulk-remove-comments-of-body.model'
import { removeComment } from '@server/lib/video-comment'
import { BulkRemoveCommentsOfBody } from '@shared/models/bulk/bulk-remove-comments-of-body.model'
import { HttpStatusCode } from '@shared/core-utils/miscs/http-error-codes'
const bulkRouter = express.Router()
@ -33,7 +34,7 @@ async function bulkRemoveCommentsOf (req: express.Request, res: express.Response
const comments = await VideoCommentModel.listForBulkDelete(account, filter)
// Don't wait result
res.sendStatus(204)
res.sendStatus(HttpStatusCode.NO_CONTENT_204)
for (const comment of comments) {
await removeComment(comment)

View file

@ -1,6 +1,7 @@
import * as cors from 'cors'
import * as express from 'express'
import * as RateLimit from 'express-rate-limit'
import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
import { badRequest } from '../../helpers/express-utils'
import { CONFIG } from '../../initializers/config'
import { abuseRouter } from './abuse'
@ -56,5 +57,5 @@ export { apiRouter }
// ---------------------------------------------------------------------------
function pong (req: express.Request, res: express.Response) {
return res.send('pong').status(200).end()
return res.send('pong').status(HttpStatusCode.OK_200).end()
}

View file

@ -1,5 +1,6 @@
import * as express from 'express'
import { OAuthClientLocal } from '../../../shared'
import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
import { logger } from '../../helpers/logger'
import { CONFIG } from '../../initializers/config'
import { asyncMiddleware } from '../../middlewares'
@ -23,7 +24,7 @@ async function getLocalClient (req: express.Request, res: express.Response, next
// Don't make this check if this is a test instance
if (process.env.NODE_ENV !== 'test' && req.get('host') !== headerHostShouldBe) {
logger.info('Getting client tokens for host %s is forbidden (expected %s).', req.get('host'), headerHostShouldBe)
return res.type('json').status(403).end()
return res.type('json').status(HttpStatusCode.FORBIDDEN_403).end()
}
const client = await OAuthClientModel.loadFirstClient()

View file

@ -27,6 +27,7 @@ import { listAvailablePluginsFromIndex } from '../../lib/plugins/plugin-index'
import { PeertubePluginIndexList } from '../../../shared/models/plugins/peertube-plugin-index-list.model'
import { RegisteredServerSettings } from '../../../shared/models/plugins/register-server-setting.model'
import { PublicServerSetting } from '../../../shared/models/plugins/public-server.setting'
import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
const pluginRouter = express.Router()
@ -140,7 +141,7 @@ async function installPlugin (req: express.Request, res: express.Response) {
return res.json(plugin.toFormattedJSON())
} catch (err) {
logger.warn('Cannot install plugin %s.', toInstall, { err })
return res.sendStatus(400)
return res.sendStatus(HttpStatusCode.BAD_REQUEST_400)
}
}
@ -155,7 +156,7 @@ async function updatePlugin (req: express.Request, res: express.Response) {
return res.json(plugin.toFormattedJSON())
} catch (err) {
logger.warn('Cannot update plugin %s.', toUpdate, { err })
return res.sendStatus(400)
return res.sendStatus(HttpStatusCode.BAD_REQUEST_400)
}
}
@ -164,7 +165,7 @@ async function uninstallPlugin (req: express.Request, res: express.Response) {
await PluginManager.Instance.uninstall(body.npmName)
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
function getPublicPluginSettings (req: express.Request, res: express.Response) {
@ -193,7 +194,7 @@ async function updatePluginSettings (req: express.Request, res: express.Response
await PluginManager.Instance.onSettingsChanged(plugin.name, plugin.settings)
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function listAvailablePlugins (req: express.Request, res: express.Response) {
@ -202,7 +203,7 @@ async function listAvailablePlugins (req: express.Request, res: express.Response
const resultList = await listAvailablePluginsFromIndex(query)
if (!resultList) {
return res.status(503)
return res.status(HttpStatusCode.SERVICE_UNAVAILABLE_503)
.json({ error: 'Plugin index unavailable. Please retry later' })
.end()
}

View file

@ -6,6 +6,7 @@ import { getOrCreateVideoAndAccountAndChannel } from '@server/lib/activitypub/vi
import { AccountBlocklistModel } from '@server/models/account/account-blocklist'
import { getServerActor } from '@server/models/application/application'
import { ServerBlocklistModel } from '@server/models/server/server-blocklist'
import { HttpStatusCode } from '@shared/core-utils/miscs/http-error-codes'
import { ResultList, Video, VideoChannel } from '@shared/models'
import { SearchTargetQuery } from '@shared/models/search/search-target-query.model'
import { VideoChannelsSearchQuery, VideosSearchQuery } from '../../../shared/models/search'
@ -99,7 +100,7 @@ async function searchVideoChannelsIndex (query: VideoChannelsSearchQuery, res: e
} catch (err) {
logger.warn('Cannot use search index to make video channels search.', { err })
return res.sendStatus(500)
return res.sendStatus(HttpStatusCode.INTERNAL_SERVER_ERROR_500)
}
}
@ -191,7 +192,7 @@ async function searchVideosIndex (query: VideosSearchQuery, res: express.Respons
} catch (err) {
logger.warn('Cannot use search index to make video search.', { err })
return res.sendStatus(500)
return res.sendStatus(HttpStatusCode.INTERNAL_SERVER_ERROR_500)
}
}

View file

@ -3,6 +3,7 @@ import { asyncMiddleware, contactAdministratorValidator } from '../../../middlew
import { Redis } from '../../../lib/redis'
import { Emailer } from '../../../lib/emailer'
import { ContactForm } from '../../../../shared/models/server'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const contactRouter = express.Router()
@ -18,7 +19,7 @@ async function contactAdministrator (req: express.Request, res: express.Response
await Redis.Instance.setContactFormIp(req.ip)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
// ---------------------------------------------------------------------------

View file

@ -28,6 +28,7 @@ import { removeRedundanciesOfServer } from '../../../lib/redundancy'
import { sequelizeTypescript } from '../../../initializers/database'
import { autoFollowBackIfNeeded } from '../../../lib/activitypub/follow'
import { getServerActor } from '@server/models/application/application'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const serverFollowsRouter = express.Router()
serverFollowsRouter.get('/following',
@ -138,7 +139,7 @@ async function followInstance (req: express.Request, res: express.Response) {
JobQueue.Instance.createJob({ type: 'activitypub-follow', payload })
}
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function removeFollowing (req: express.Request, res: express.Response) {
@ -159,7 +160,7 @@ async function removeFollowing (req: express.Request, res: express.Response) {
await follow.destroy({ transaction: t })
})
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function removeOrRejectFollower (req: express.Request, res: express.Response) {
@ -169,7 +170,7 @@ async function removeOrRejectFollower (req: express.Request, res: express.Respon
await follow.destroy()
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function acceptFollower (req: express.Request, res: express.Response) {
@ -182,5 +183,5 @@ async function acceptFollower (req: express.Request, res: express.Response) {
await autoFollowBackIfNeeded(follow)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}

View file

@ -19,6 +19,7 @@ import { removeRedundanciesOfServer, removeVideoRedundancy } from '../../../lib/
import { logger } from '../../../helpers/logger'
import { VideoRedundancyModel } from '@server/models/redundancy/video-redundancy'
import { JobQueue } from '@server/lib/job-queue'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const serverRedundancyRouter = express.Router()
@ -89,13 +90,13 @@ async function addVideoRedundancy (req: express.Request, res: express.Response)
payload
})
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function removeVideoRedundancyController (req: express.Request, res: express.Response) {
await removeVideoRedundancy(res.locals.videoRedundancy)
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function updateRedundancy (req: express.Request, res: express.Response) {
@ -109,5 +110,5 @@ async function updateRedundancy (req: express.Request, res: express.Response) {
removeRedundanciesOfServer(server.id)
.catch(err => logger.error('Cannot remove redundancy of %s.', server.host, { err }))
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}

View file

@ -25,6 +25,7 @@ import {
} from '../../../middlewares/validators'
import { AccountBlocklistModel } from '../../../models/account/account-blocklist'
import { ServerBlocklistModel } from '../../../models/server/server-blocklist'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const serverBlocklistRouter = express.Router()
@ -108,7 +109,7 @@ async function blockAccount (req: express.Request, res: express.Response) {
forUserId: null // For all users
}).catch(err => logger.error('Cannot remove notifications after an account mute.', { err }))
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function unblockAccount (req: express.Request, res: express.Response) {
@ -116,7 +117,7 @@ async function unblockAccount (req: express.Request, res: express.Response) {
await removeAccountFromBlocklist(accountBlock)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function listBlockedServers (req: express.Request, res: express.Response) {
@ -145,7 +146,7 @@ async function blockServer (req: express.Request, res: express.Response) {
forUserId: null // For all users
}).catch(err => logger.error('Cannot remove notifications after a server mute.', { err }))
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function unblockServer (req: express.Request, res: express.Response) {
@ -153,5 +154,5 @@ async function unblockServer (req: express.Request, res: express.Response) {
await removeServerFromBlocklist(serverBlock)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}

View file

@ -52,6 +52,7 @@ import { myVideosHistoryRouter } from './my-history'
import { myNotificationsRouter } from './my-notifications'
import { mySubscriptionsRouter } from './my-subscriptions'
import { myVideoPlaylistsRouter } from './my-video-playlists'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const auditLogger = auditLoggerFactory('users')
@ -255,7 +256,7 @@ async function registerUser (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.user.registered', { body, user, account, videoChannel })
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function unblockUser (req: express.Request, res: express.Response) {
@ -265,7 +266,7 @@ async function unblockUser (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.user.unblocked', { user })
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function blockUser (req: express.Request, res: express.Response) {
@ -276,7 +277,7 @@ async function blockUser (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.user.blocked', { user })
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
function getUser (req: express.Request, res: express.Response) {
@ -310,7 +311,7 @@ async function removeUser (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.user.deleted', { user })
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function updateUser (req: express.Request, res: express.Response) {
@ -338,7 +339,7 @@ async function updateUser (req: express.Request, res: express.Response) {
// Don't need to send this update to followers, these attributes are not federated
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function askResetUserPassword (req: express.Request, res: express.Response) {
@ -348,7 +349,7 @@ async function askResetUserPassword (req: express.Request, res: express.Response
const url = WEBSERVER.URL + '/reset-password?userId=' + user.id + '&verificationString=' + verificationString
await Emailer.Instance.addPasswordResetEmailJob(user.username, user.email, url)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function resetUserPassword (req: express.Request, res: express.Response) {
@ -358,7 +359,7 @@ async function resetUserPassword (req: express.Request, res: express.Response) {
await user.save()
await Redis.Instance.removePasswordVerificationString(user.id)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function reSendVerifyUserEmail (req: express.Request, res: express.Response) {
@ -366,7 +367,7 @@ async function reSendVerifyUserEmail (req: express.Request, res: express.Respons
await sendVerifyUserEmail(user)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function verifyUserEmail (req: express.Request, res: express.Response) {
@ -380,7 +381,7 @@ async function verifyUserEmail (req: express.Request, res: express.Response) {
await user.save()
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function changeUserBlock (res: express.Response, user: MUserAccountDefault, block: boolean, reason?: string) {

View file

@ -28,6 +28,7 @@ import { AccountVideoRateModel } from '../../../models/account/account-video-rat
import { UserModel } from '../../../models/account/user'
import { VideoModel } from '../../../models/video/video'
import { VideoImportModel } from '../../../models/video/video-import'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const reqAvatarFile = createReqFiles([ 'avatarfile' ], MIMETYPES.IMAGE.MIMETYPE_EXT, { avatarfile: CONFIG.STORAGE.TMP_DIR })
@ -162,7 +163,7 @@ async function deleteMe (req: express.Request, res: express.Response) {
await user.destroy()
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function updateMe (req: express.Request, res: express.Response) {
@ -210,7 +211,7 @@ async function updateMe (req: express.Request, res: express.Response) {
await sendVerifyUserEmail(user, true)
}
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function updateMyAvatar (req: express.Request, res: express.Response) {

View file

@ -22,6 +22,7 @@ import { addAccountInBlocklist, addServerInBlocklist, removeAccountFromBlocklist
import { ServerBlocklistModel } from '../../../models/server/server-blocklist'
import { UserNotificationModel } from '@server/models/account/user-notification'
import { logger } from '@server/helpers/logger'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const myBlocklistRouter = express.Router()
@ -99,7 +100,7 @@ async function blockAccount (req: express.Request, res: express.Response) {
forUserId: user.id
}).catch(err => logger.error('Cannot remove notifications after an account mute.', { err }))
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function unblockAccount (req: express.Request, res: express.Response) {
@ -107,7 +108,7 @@ async function unblockAccount (req: express.Request, res: express.Response) {
await removeAccountFromBlocklist(accountBlock)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function listBlockedServers (req: express.Request, res: express.Response) {
@ -136,7 +137,7 @@ async function blockServer (req: express.Request, res: express.Response) {
forUserId: user.id
}).catch(err => logger.error('Cannot remove notifications after a server mute.', { err }))
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function unblockServer (req: express.Request, res: express.Response) {
@ -144,5 +145,5 @@ async function unblockServer (req: express.Request, res: express.Response) {
await removeServerFromBlocklist(serverBlock)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}

View file

@ -10,6 +10,7 @@ import {
import { getFormattedObjects } from '../../../helpers/utils'
import { UserVideoHistoryModel } from '../../../models/account/user-video-history'
import { sequelizeTypescript } from '../../../initializers/database'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const myVideosHistoryRouter = express.Router()
@ -50,5 +51,7 @@ async function removeUserHistory (req: express.Request, res: express.Response) {
return UserVideoHistoryModel.removeUserHistoryBefore(user, beforeDate, t)
})
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}

View file

@ -19,6 +19,7 @@ import {
} from '../../../middlewares/validators/user-notifications'
import { UserNotificationSetting } from '../../../../shared/models/users'
import { UserNotificationSettingModel } from '../../../models/account/user-notification-setting'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const myNotificationsRouter = express.Router()
@ -84,7 +85,7 @@ async function updateNotificationSettings (req: express.Request, res: express.Re
await UserNotificationSettingModel.update(values, query)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function listUserNotifications (req: express.Request, res: express.Response) {
@ -100,7 +101,7 @@ async function markAsReadUserNotifications (req: express.Request, res: express.R
await UserNotificationModel.markAsRead(user.id, req.body.ids)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function markAsReadAllUserNotifications (req: express.Request, res: express.Response) {
@ -108,5 +109,5 @@ async function markAsReadAllUserNotifications (req: express.Request, res: expres
await UserNotificationModel.markAllAsRead(user.id)
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}

View file

@ -27,6 +27,7 @@ import {
import { ActorFollowModel } from '../../../models/activitypub/actor-follow'
import { VideoModel } from '../../../models/video/video'
import { sendUndoFollow } from '@server/lib/activitypub/send'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const mySubscriptionsRouter = express.Router()
@ -126,7 +127,7 @@ function addUserSubscription (req: express.Request, res: express.Response) {
JobQueue.Instance.createJob({ type: 'activitypub-follow', payload })
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
function getUserSubscription (req: express.Request, res: express.Response) {
@ -144,7 +145,9 @@ async function deleteUserSubscription (req: express.Request, res: express.Respon
return subscription.destroy({ transaction: t })
})
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}
async function getUserSubscriptions (req: express.Request, res: express.Response) {

View file

@ -38,6 +38,7 @@ import { AccountModel } from '../../models/account/account'
import { VideoModel } from '../../models/video/video'
import { VideoChannelModel } from '../../models/video/video-channel'
import { VideoPlaylistModel } from '../../models/video/video-playlist'
import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
const auditLogger = auditLoggerFactory('channels')
const reqAvatarFile = createReqFiles([ 'avatarfile' ], MIMETYPES.IMAGE.MIMETYPE_EXT, { avatarfile: CONFIG.STORAGE.TMP_DIR })
@ -212,7 +213,7 @@ async function updateVideoChannel (req: express.Request, res: express.Response)
throw err
}
res.type('json').status(204).end()
res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
// Don't process in a transaction, and after the response because it could be long
if (doBulkVideoUpdate) {
@ -232,7 +233,7 @@ async function removeVideoChannel (req: express.Request, res: express.Response)
logger.info('Video channel %s deleted.', videoChannelInstance.Actor.url)
})
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function getVideoChannel (req: express.Request, res: express.Response) {

View file

@ -42,6 +42,7 @@ import {
import { AccountModel } from '../../models/account/account'
import { VideoPlaylistModel } from '../../models/video/video-playlist'
import { VideoPlaylistElementModel } from '../../models/video/video-playlist-element'
import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
const reqThumbnailFile = createReqFiles([ 'thumbnailfile' ], MIMETYPES.IMAGE.MIMETYPE_EXT, { thumbnailfile: CONFIG.STORAGE.TMP_DIR })
@ -271,7 +272,7 @@ async function updateVideoPlaylist (req: express.Request, res: express.Response)
throw err
}
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function removeVideoPlaylist (req: express.Request, res: express.Response) {
@ -285,7 +286,7 @@ async function removeVideoPlaylist (req: express.Request, res: express.Response)
logger.info('Video playlist %s deleted.', videoPlaylistInstance.uuid)
})
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function addVideoInPlaylist (req: express.Request, res: express.Response) {
@ -351,7 +352,7 @@ async function updateVideoPlaylistElement (req: express.Request, res: express.Re
logger.info('Element of position %d of playlist %s updated.', playlistElement.position, videoPlaylist.uuid)
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function removeVideoFromPlaylist (req: express.Request, res: express.Response) {
@ -379,7 +380,7 @@ async function removeVideoFromPlaylist (req: express.Request, res: express.Respo
sendUpdateVideoPlaylist(videoPlaylist, undefined)
.catch(err => logger.error('Cannot send video playlist update.', { err }))
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function reorderVideosPlaylist (req: express.Request, res: express.Response) {
@ -391,7 +392,7 @@ async function reorderVideosPlaylist (req: express.Request, res: express.Respons
const reorderLength: number = body.reorderLength || 1
if (start === insertAfter) {
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
// Example: if we reorder position 2 and insert after position 5 (so at position 6): # 1 2 3 4 5 6 7 8 9
@ -432,7 +433,7 @@ async function reorderVideosPlaylist (req: express.Request, res: express.Respons
videoPlaylist.uuid, insertAfter, start, start + reorderLength - 1
)
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}
async function getVideoPlaylistVideos (req: express.Request, res: express.Response) {

View file

@ -18,6 +18,7 @@ import {
videosBlacklistUpdateValidator
} from '../../../middlewares'
import { VideoBlacklistModel } from '../../../models/video/video-blacklist'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const blacklistRouter = express.Router()
@ -69,7 +70,7 @@ async function addVideoToBlacklistController (req: express.Request, res: express
logger.info('Video %s blacklisted.', videoInstance.uuid)
return res.type('json').sendStatus(204)
return res.type('json').sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function updateVideoBlacklistController (req: express.Request, res: express.Response) {
@ -81,7 +82,7 @@ async function updateVideoBlacklistController (req: express.Request, res: expres
return videoBlacklist.save({ transaction: t })
})
return res.type('json').sendStatus(204)
return res.type('json').sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function listBlacklist (req: express.Request, res: express.Response) {
@ -104,5 +105,5 @@ async function removeVideoFromBlacklistController (req: express.Request, res: ex
logger.info('Video %s removed from blacklist.', video.uuid)
return res.type('json').sendStatus(204)
return res.type('json').sendStatus(HttpStatusCode.NO_CONTENT_204)
}

View file

@ -11,6 +11,7 @@ import { moveAndProcessCaptionFile } from '../../../helpers/captions-utils'
import { CONFIG } from '../../../initializers/config'
import { sequelizeTypescript } from '../../../initializers/database'
import { MVideoCaptionVideo } from '@server/types/models'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const reqVideoCaptionAdd = createReqFiles(
[ 'captionfile' ],
@ -72,7 +73,7 @@ async function addVideoCaption (req: express.Request, res: express.Response) {
await federateVideoIfNeeded(video, false, t)
})
return res.status(204).end()
return res.status(HttpStatusCode.NO_CONTENT_204).end()
}
async function deleteVideoCaption (req: express.Request, res: express.Response) {
@ -88,5 +89,5 @@ async function deleteVideoCaption (req: express.Request, res: express.Response)
logger.info('Video caption %s of video %s deleted.', videoCaption.language, video.uuid)
return res.type('json').status(204).end()
return res.type('json').status(HttpStatusCode.NO_CONTENT_204).end()
}

View file

@ -29,6 +29,7 @@ import {
} from '../../../middlewares/validators'
import { AccountModel } from '../../../models/account/account'
import { VideoCommentModel } from '../../../models/video/video-comment'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const auditLogger = auditLoggerFactory('comments')
const videoCommentRouter = express.Router()
@ -161,7 +162,7 @@ async function listVideoThreadComments (req: express.Request, res: express.Respo
}
if (resultList.data.length === 0) {
return res.sendStatus(404)
return res.sendStatus(HttpStatusCode.NOT_FOUND_404)
}
return res.json(buildFormattedCommentTree(resultList))
@ -218,5 +219,7 @@ async function removeVideoComment (req: express.Request, res: express.Response)
auditLogger.delete(getAuditIdFromRes(res), new CommentAuditView(videoCommentInstance.toFormattedJSON()))
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}

View file

@ -36,6 +36,7 @@ import { asyncMiddleware, asyncRetryTransactionMiddleware, authenticate, videoIm
import { VideoModel } from '../../../models/video/video'
import { VideoCaptionModel } from '../../../models/video/video-caption'
import { VideoImportModel } from '../../../models/video/video-import'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const auditLogger = auditLoggerFactory('video-imports')
const videoImportsRouter = express.Router()
@ -146,7 +147,7 @@ async function addYoutubeDLImport (req: express.Request, res: express.Response)
} catch (err) {
logger.info('Cannot fetch information from import for URL %s.', targetUrl, { err })
return res.status(400).json({
return res.status(HttpStatusCode.BAD_REQUEST_400).json({
error: 'Cannot fetch remote information of this URL.'
}).end()
}

View file

@ -66,6 +66,7 @@ import { liveRouter } from './live'
import { ownershipVideoRouter } from './ownership'
import { rateVideoRouter } from './rate'
import { watchingRouter } from './watching'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const auditLogger = auditLoggerFactory('videos')
const videosRouter = express.Router()
@ -178,7 +179,7 @@ async function addVideo (req: express.Request, res: express.Response) {
// Set timeout to 10 minutes, as Express's default is 2 minutes
req.setTimeout(1000 * 60 * 10, () => {
logger.error('Upload video has timed out.')
return res.sendStatus(408)
return res.sendStatus(HttpStatusCode.REQUEST_TIMEOUT_408)
})
const videoPhysicalFile = req.files['videofile'][0]
@ -394,7 +395,9 @@ async function updateVideo (req: express.Request, res: express.Response) {
throw err
}
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}
async function getVideo (req: express.Request, res: express.Response) {
@ -421,7 +424,7 @@ async function viewVideo (req: express.Request, res: express.Response) {
const exists = await Redis.Instance.doesVideoIPViewExist(ip, immutableVideoAttrs.uuid)
if (exists) {
logger.debug('View for ip %s and video %s already exists.', ip, immutableVideoAttrs.uuid)
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
const video = await VideoModel.load(immutableVideoAttrs.id)
@ -454,7 +457,7 @@ async function viewVideo (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.video.viewed', { video, ip })
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function getVideoDescription (req: express.Request, res: express.Response) {
@ -517,5 +520,7 @@ async function removeVideo (req: express.Request, res: express.Response) {
Hooks.runAction('action:api.video.deleted', { video: videoInstance })
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}

View file

@ -16,6 +16,7 @@ import { sequelizeTypescript } from '../../../initializers/database'
import { createVideoMiniatureFromExisting } from '../../../lib/thumbnail'
import { asyncMiddleware, asyncRetryTransactionMiddleware, authenticate } from '../../../middlewares'
import { VideoModel } from '../../../models/video/video'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const liveRouter = express.Router()
@ -75,7 +76,7 @@ async function updateLiveVideo (req: express.Request, res: express.Response) {
await federateVideoIfNeeded(video, false)
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
}
async function addLiveVideo (req: express.Request, res: express.Response) {

View file

@ -19,6 +19,7 @@ import { changeVideoChannelShare } from '../../../lib/activitypub/share'
import { sendUpdateVideo } from '../../../lib/activitypub/send'
import { VideoModel } from '../../../models/video/video'
import { MVideoFullLight } from '@server/types/models'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const ownershipVideoRouter = express.Router()
@ -80,7 +81,9 @@ async function giveVideoOwnership (req: express.Request, res: express.Response)
})
logger.info('Ownership change for video %s created.', videoInstance.name)
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}
async function listVideoOwnership (req: express.Request, res: express.Response) {
@ -119,7 +122,7 @@ async function acceptOwnership (req: express.Request, res: express.Response) {
videoChangeOwnership.status = VideoChangeOwnershipStatus.ACCEPTED
await videoChangeOwnership.save({ transaction: t })
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
})
}
@ -130,6 +133,6 @@ async function refuseOwnership (req: express.Request, res: express.Response) {
videoChangeOwnership.status = VideoChangeOwnershipStatus.REFUSED
await videoChangeOwnership.save({ transaction: t })
return res.sendStatus(204)
return res.sendStatus(HttpStatusCode.NO_CONTENT_204)
})
}

View file

@ -7,6 +7,7 @@ import { asyncMiddleware, asyncRetryTransactionMiddleware, authenticate, videoUp
import { AccountModel } from '../../../models/account/account'
import { AccountVideoRateModel } from '../../../models/account/account-video-rate'
import { sequelizeTypescript } from '../../../initializers/database'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const rateVideoRouter = express.Router()
@ -78,5 +79,7 @@ async function rateVideo (req: express.Request, res: express.Response) {
logger.info('Account video rate for video %s of account %s updated.', videoInstance.name, accountInstance.name)
})
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}

View file

@ -2,6 +2,7 @@ import * as express from 'express'
import { UserWatchingVideo } from '../../../../shared'
import { asyncMiddleware, asyncRetryTransactionMiddleware, authenticate, videoWatchingValidator } from '../../../middlewares'
import { UserVideoHistoryModel } from '../../../models/account/user-video-history'
import { HttpStatusCode } from '../../../../shared/core-utils/miscs/http-error-codes'
const watchingRouter = express.Router()
@ -31,5 +32,7 @@ async function userWatchVideo (req: express.Request, res: express.Response) {
currentTime: body.currentTime
})
return res.type('json').status(204).end()
return res.type('json')
.status(HttpStatusCode.NO_CONTENT_204)
.end()
}