import { AbuseCreate, UserRight } from '@shared/models'
import { HttpStatusCode } from '../../../shared/models/http/http-error-codes'
import { areValidationErrors, doesAbuseExist, doesAccountIdExist, doesCommentIdExist, doesVideoExist } from './shared'
+import { forceNumber } from '@shared/core-utils'
const abuseReportValidator = [
body('account.id')
.custom(areAbusePredefinedReasonsValid),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking abuseReport parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
const body: AbuseCreate = req.body
.custom(isIdValid),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking abuseGetValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
if (!await doesAbuseExist(req.params.id, res)) return
.custom(isAbuseModerationCommentValid),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking abuseUpdateValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
if (!await doesAbuseExist(req.params.id, res)) return
.custom(exists),
(req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking abuseListForAdminsValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
return next()
.custom(isAbuseStateValid),
(req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking abuseListForUserValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
return next()
.custom(isIdValid),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking getAbuseValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
if (!await doesAbuseExist(req.params.id, res)) return
const checkAbuseValidForMessagesValidator = [
(req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking checkAbuseValidForMessagesValidator parameters', { parameters: req.body })
-
const abuse = res.locals.abuse
if (abuse.ReporterAccount.isOwned() === false) {
return res.fail({ message: 'This abuse was created by a user of your instance.' })
.custom(isAbuseMessageValid),
(req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking addAbuseMessageValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
return next()
.custom(isIdValid),
async (req: express.Request, res: express.Response, next: express.NextFunction) => {
- logger.debug('Checking deleteAbuseMessageValidator parameters', { parameters: req.body })
-
if (areValidationErrors(req, res)) return
const user = res.locals.oauth.token.user
const abuse = res.locals.abuse
- const messageId = parseInt(req.params.messageId + '', 10)
+ const messageId = forceNumber(req.params.messageId)
const abuseMessage = await AbuseMessageModel.loadByIdAndAbuseId(messageId, abuse.id)
if (!abuseMessage) {