]>
Commit | Line | Data |
---|---|---|
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') |
a5fa04b0 C |
8 | var secureMiddleware = middleware.secure |
9 | var cacheMiddleware = middleware.cache | |
b60035d8 | 10 | var reqValidator = middleware.reqValidators.remote |
cda02107 | 11 | var videos = require('../../../models/videos') |
8c308c2b | 12 | |
c45f7f84 C |
13 | var router = express.Router() |
14 | ||
15 | router.post('/add', | |
16 | reqValidator.secureRequest, | |
a5fa04b0 | 17 | secureMiddleware.decryptBody, |
c45f7f84 | 18 | reqValidator.remoteVideosAdd, |
a5fa04b0 | 19 | cacheMiddleware.cache(false), |
c45f7f84 C |
20 | addRemoteVideos |
21 | ) | |
22 | ||
23 | router.post('/remove', | |
24 | reqValidator.secureRequest, | |
a5fa04b0 | 25 | secureMiddleware.decryptBody, |
c45f7f84 | 26 | reqValidator.remoteVideosRemove, |
a5fa04b0 | 27 | cacheMiddleware.cache(false), |
c45f7f84 C |
28 | removeRemoteVideo |
29 | ) | |
30 | ||
31 | // --------------------------------------------------------------------------- | |
32 | ||
33 | module.exports = router | |
34 | ||
35 | // --------------------------------------------------------------------------- | |
36 | ||
8c308c2b | 37 | function addRemoteVideos (req, res, next) { |
0b697522 | 38 | videos.addRemotes(req.body.data, function (err, videos) { |
e63dc45f | 39 | if (err) return next(err) |
8c308c2b | 40 | |
0b697522 | 41 | res.json(videos) |
8c308c2b C |
42 | }) |
43 | } | |
44 | ||
45 | function removeRemoteVideo (req, res, next) { | |
c173e565 C |
46 | var url = req.body.signature.url |
47 | var magnetUris = pluck(req.body.data, 'magnetUri') | |
48 | ||
49 | videos.removeRemotesOfByMagnetUris(url, magnetUris, function (err) { | |
e63dc45f | 50 | if (err) return next(err) |
8c308c2b | 51 | |
45239549 | 52 | res.sendStatus(204) |
8c308c2b C |
53 | }) |
54 | } | |
8c308c2b | 55 | })() |