mirror of https://github.com/Chocobozzz/PeerTube
				
				
				
			
		
			
				
	
	
		
			40 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
| import { Response } from 'express'
 | |
| import * as validator from 'validator'
 | |
| import { exists } from './misc'
 | |
| import { CONSTRAINTS_FIELDS } from '../../initializers/constants'
 | |
| import { VideoBlacklistModel } from '../../models/video/video-blacklist'
 | |
| import { VideoBlacklistType } from '../../../shared/models/videos'
 | |
| 
 | |
| const VIDEO_BLACKLIST_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEO_BLACKLIST
 | |
| 
 | |
| function isVideoBlacklistReasonValid (value: string) {
 | |
|   return value === null || validator.isLength(value, VIDEO_BLACKLIST_CONSTRAINTS_FIELDS.REASON)
 | |
| }
 | |
| 
 | |
| async function doesVideoBlacklistExist (videoId: number, res: Response) {
 | |
|   const videoBlacklist = await VideoBlacklistModel.loadByVideoId(videoId)
 | |
| 
 | |
|   if (videoBlacklist === null) {
 | |
|     res.status(404)
 | |
|        .json({ error: 'Blacklisted video not found' })
 | |
|        .end()
 | |
| 
 | |
|     return false
 | |
|   }
 | |
| 
 | |
|   res.locals.videoBlacklist = videoBlacklist
 | |
|   return true
 | |
| }
 | |
| 
 | |
| function isVideoBlacklistTypeValid (value: any) {
 | |
|   return exists(value) && validator.isInt('' + value) && VideoBlacklistType[value] !== undefined
 | |
| }
 | |
| 
 | |
| // ---------------------------------------------------------------------------
 | |
| 
 | |
| export {
 | |
|   isVideoBlacklistReasonValid,
 | |
|   isVideoBlacklistTypeValid,
 | |
|   doesVideoBlacklistExist
 | |
| }
 |