Format video blacklist
This commit is contained in:
parent
32502eda29
commit
ab683a8e0d
7 changed files with 53 additions and 52 deletions
|
@ -171,6 +171,7 @@ export class VideoWatchComponent implements OnInit, OnDestroy {
|
|||
|
||||
removeVideo(event: Event) {
|
||||
event.preventDefault();
|
||||
|
||||
this.confirmService.confirm('Do you really want to delete this video?', 'Delete').subscribe(
|
||||
res => {
|
||||
if (res === false) return;
|
||||
|
@ -178,9 +179,9 @@ export class VideoWatchComponent implements OnInit, OnDestroy {
|
|||
this.videoService.removeVideo(this.video.id)
|
||||
.subscribe(
|
||||
status => {
|
||||
this.notificationsService.success('Success', `Video ${this.video.name} deleted.`)
|
||||
this.notificationsService.success('Success', `Video ${this.video.name} deleted.`);
|
||||
// Go back to the video-list.
|
||||
this.router.navigate(['/videos/list'])
|
||||
this.router.navigate(['/videos/list']);
|
||||
},
|
||||
|
||||
error => this.notificationsService.error('Error', error.text)
|
||||
|
@ -190,7 +191,8 @@ export class VideoWatchComponent implements OnInit, OnDestroy {
|
|||
}
|
||||
|
||||
blacklistVideo(event: Event) {
|
||||
event.preventDefault()
|
||||
event.preventDefault();
|
||||
|
||||
this.confirmService.confirm('Do you really want to blacklist this video ?', 'Blacklist').subscribe(
|
||||
res => {
|
||||
if (res === false) return;
|
||||
|
@ -198,14 +200,14 @@ export class VideoWatchComponent implements OnInit, OnDestroy {
|
|||
this.videoService.blacklistVideo(this.video.id)
|
||||
.subscribe(
|
||||
status => {
|
||||
this.notificationsService.success('Success', `Video ${this.video.name} had been blacklisted.`)
|
||||
this.router.navigate(['/videos/list'])
|
||||
this.notificationsService.success('Success', `Video ${this.video.name} had been blacklisted.`);
|
||||
this.router.navigate(['/videos/list']);
|
||||
},
|
||||
|
||||
error => this.notificationsService.error('Error', error.text)
|
||||
)
|
||||
);
|
||||
}
|
||||
)
|
||||
);
|
||||
}
|
||||
|
||||
showReportModal(event: Event) {
|
||||
|
|
|
@ -635,10 +635,11 @@ function reportVideoAbuse (req, res, finalCallback) {
|
|||
function addVideoToBlacklist (req, res, next) {
|
||||
const videoInstance = res.locals.video
|
||||
|
||||
db.BlacklistedVideo.create({
|
||||
const toCreate = {
|
||||
videoId: videoInstance.id
|
||||
})
|
||||
.asCallback(function (err) {
|
||||
}
|
||||
|
||||
db.BlacklistedVideo.create(toCreate).asCallback(function (err) {
|
||||
if (err) {
|
||||
logger.error('Errors when blacklisting video ', { error: err })
|
||||
return next(err)
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
'use strict'
|
||||
|
||||
const constants = require('../initializers/constants')
|
||||
const logger = require('../helpers/logger')
|
||||
|
||||
const adminMiddleware = {
|
||||
|
@ -9,7 +8,7 @@ const adminMiddleware = {
|
|||
|
||||
function ensureIsAdmin (req, res, next) {
|
||||
const user = res.locals.oauth.token.user
|
||||
if (user.role !== constants.USER_ROLES.ADMIN) {
|
||||
if (user.isAdmin() === false) {
|
||||
logger.info('A non admin user is trying to access to an admin content.')
|
||||
return res.sendStatus(403)
|
||||
}
|
||||
|
|
|
@ -137,6 +137,18 @@ function videoRate (req, res, next) {
|
|||
})
|
||||
}
|
||||
|
||||
function videosBlacklist (req, res, next) {
|
||||
req.checkParams('id', 'Should have a valid id').notEmpty().isUUID(4)
|
||||
|
||||
logger.debug('Checking videosBlacklist parameters', { parameters: req.params })
|
||||
|
||||
checkErrors(req, res, function () {
|
||||
checkVideoExists(req.params.id, res, function () {
|
||||
checkVideoIsBlacklistable(req, res, next)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
// ---------------------------------------------------------------------------
|
||||
|
||||
module.exports = validatorsVideos
|
||||
|
@ -166,7 +178,7 @@ function checkUserCanDeleteVideo (userId, res, callback) {
|
|||
}
|
||||
|
||||
// Check if the user can delete the video
|
||||
// The user can delete it if s/he an admin
|
||||
// The user can delete it if s/he is an admin
|
||||
// Or if s/he is the video's author
|
||||
if (user.isAdmin() === false) {
|
||||
if (res.locals.video.isOwned() === false) {
|
||||
|
@ -190,15 +202,3 @@ function checkVideoIsBlacklistable (req, res, callback) {
|
|||
|
||||
callback()
|
||||
}
|
||||
|
||||
function videosBlacklist (req, res, next) {
|
||||
req.checkParams('id', 'Should have a valid id').notEmpty().isUUID(4)
|
||||
|
||||
logger.debug('Checking videosBlacklist parameters', { parameters: req.params })
|
||||
|
||||
checkErrors(req, res, function () {
|
||||
checkVideoExists(req.params.id, res, function() {
|
||||
checkVideoIsBlacklistable(req, res, next)
|
||||
})
|
||||
})
|
||||
}
|
||||
|
|
|
@ -770,7 +770,6 @@ function removeFromBlacklist (video, callback) {
|
|||
// If an error occured, stop here
|
||||
if (err) {
|
||||
logger.error('Error when fetching video from blacklist.', { error: err })
|
||||
|
||||
return callback(err)
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue