]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - controllers/api/v1/remoteVideos.js
Infile code reorganization
[github/Chocobozzz/PeerTube.git] / controllers / api / v1 / remoteVideos.js
CommitLineData
8c308c2b
C
1;(function () {
2 'use strict'
3
4 var express = require('express')
0b697522
C
5 var pluck = require('lodash-node/compat/collection/pluck')
6
f5a60a51 7 var middleware = require('../../../middlewares')
b60035d8
C
8 var miscMiddleware = middleware.misc
9 var reqValidator = middleware.reqValidators.remote
cda02107 10 var videos = require('../../../models/videos')
8c308c2b 11
c45f7f84
C
12 var router = express.Router()
13
14 router.post('/add',
15 reqValidator.secureRequest,
16 miscMiddleware.decryptBody,
17 reqValidator.remoteVideosAdd,
18 miscMiddleware.cache(false),
19 addRemoteVideos
20 )
21
22 router.post('/remove',
23 reqValidator.secureRequest,
24 miscMiddleware.decryptBody,
25 reqValidator.remoteVideosRemove,
26 miscMiddleware.cache(false),
27 removeRemoteVideo
28 )
29
30 // ---------------------------------------------------------------------------
31
32 module.exports = router
33
34 // ---------------------------------------------------------------------------
35
8c308c2b 36 function addRemoteVideos (req, res, next) {
0b697522 37 videos.addRemotes(req.body.data, function (err, videos) {
e63dc45f 38 if (err) return next(err)
8c308c2b 39
0b697522 40 res.json(videos)
8c308c2b
C
41 })
42 }
43
44 function removeRemoteVideo (req, res, next) {
0b697522 45 videos.removeRemotes(req.body.signature.url, pluck(req.body.data, 'magnetUri'), function (err) {
e63dc45f 46 if (err) return next(err)
8c308c2b 47
45239549 48 res.sendStatus(204)
8c308c2b
C
49 })
50 }
8c308c2b 51})()