]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/helpers/custom-validators/video-abuses.ts
Use video abuse filters on client side
[github/Chocobozzz/PeerTube.git] / server / helpers / custom-validators / video-abuses.ts
index a61dcee1cd9ef8df9cc9809647d6b87d8d9d4001..05e11b1c69c25908dda652f61b6d9f220105bb57 100644 (file)
@@ -1,8 +1,8 @@
-import { Response } from 'express'
-import * as validator from 'validator'
+import validator from 'validator'
+
 import { CONSTRAINTS_FIELDS, VIDEO_ABUSE_STATES } from '../../initializers/constants'
 import { exists } from './misc'
-import { VideoAbuseModel } from '../../models/video/video-abuse'
+import { VideoAbuseVideoIs } from '@shared/models/videos/abuse/video-abuse-video-is.type'
 
 const VIDEO_ABUSES_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEO_ABUSES
 
@@ -15,29 +15,21 @@ function isVideoAbuseModerationCommentValid (value: string) {
 }
 
 function isVideoAbuseStateValid (value: string) {
-  return exists(value) && VIDEO_ABUSE_STATES[ value ] !== undefined
+  return exists(value) && VIDEO_ABUSE_STATES[value] !== undefined
 }
 
-async function doesVideoAbuseExist (abuseId: number, videoId: number, res: Response) {
-  const videoAbuse = await VideoAbuseModel.loadByIdAndVideoId(abuseId, videoId)
-
-  if (videoAbuse === null) {
-    res.status(404)
-       .json({ error: 'Video abuse not found' })
-       .end()
-
-    return false
-  }
-
-  res.locals.videoAbuse = videoAbuse
-  return true
+function isAbuseVideoIsValid (value: VideoAbuseVideoIs) {
+  return exists(value) && (
+    value === 'deleted' ||
+    value === 'blacklisted'
+  )
 }
 
 // ---------------------------------------------------------------------------
 
 export {
-  doesVideoAbuseExist,
   isVideoAbuseStateValid,
   isVideoAbuseReasonValid,
+  isAbuseVideoIsValid,
   isVideoAbuseModerationCommentValid
 }