]>
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') |
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 | })() |