From b9a3e09ad5a7673f64556d1dba122ed4c4fac980 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Mon, 7 Mar 2016 11:33:59 +0100 Subject: Prepare folders structure for angular app --- controllers/api/v1/index.js | 17 ----- controllers/api/v1/pods.js | 93 ------------------------ controllers/api/v1/remoteVideos.js | 53 -------------- controllers/api/v1/videos.js | 144 ------------------------------------- 4 files changed, 307 deletions(-) delete mode 100644 controllers/api/v1/index.js delete mode 100644 controllers/api/v1/pods.js delete mode 100644 controllers/api/v1/remoteVideos.js delete mode 100644 controllers/api/v1/videos.js (limited to 'controllers/api/v1') diff --git a/controllers/api/v1/index.js b/controllers/api/v1/index.js deleted file mode 100644 index 07a68ed9d..000000000 --- a/controllers/api/v1/index.js +++ /dev/null @@ -1,17 +0,0 @@ -'use strict' - -var express = require('express') - -var router = express.Router() - -var podsController = require('./pods') -var remoteVideosController = require('./remoteVideos') -var videosController = require('./videos') - -router.use('/pods', podsController) -router.use('/remotevideos', remoteVideosController) -router.use('/videos', videosController) - -// --------------------------------------------------------------------------- - -module.exports = router diff --git a/controllers/api/v1/pods.js b/controllers/api/v1/pods.js deleted file mode 100644 index c93a86ee8..000000000 --- a/controllers/api/v1/pods.js +++ /dev/null @@ -1,93 +0,0 @@ -'use strict' - -var express = require('express') -var fs = require('fs') - -var logger = require('../../../helpers/logger') -var friends = require('../../../lib/friends') -var middleware = require('../../../middlewares') -var cacheMiddleware = middleware.cache -var peertubeCrypto = require('../../../helpers/peertubeCrypto') -var Pods = require('../../../models/pods') -var reqValidator = middleware.reqValidators.pods -var secureMiddleware = middleware.secure -var secureRequest = middleware.reqValidators.remote.secureRequest -var Videos = require('../../../models/videos') - -var router = express.Router() - -router.get('/', cacheMiddleware.cache(false), listPods) -router.post('/', reqValidator.podsAdd, cacheMiddleware.cache(false), addPods) -router.get('/makefriends', reqValidator.makeFriends, cacheMiddleware.cache(false), makeFriends) -router.get('/quitfriends', cacheMiddleware.cache(false), quitFriends) -// Post because this is a secured request -router.post('/remove', secureRequest, secureMiddleware.decryptBody, removePods) - -// --------------------------------------------------------------------------- - -module.exports = router - -// --------------------------------------------------------------------------- - -function addPods (req, res, next) { - var informations = req.body.data - Pods.add(informations, function (err) { - if (err) return next(err) - - Videos.addRemotes(informations.videos) - - fs.readFile(peertubeCrypto.getCertDir() + 'peertube.pub', 'utf8', function (err, cert) { - if (err) { - logger.error('Cannot read cert file.') - return next(err) - } - - Videos.listOwned(function (err, videos_list) { - if (err) { - logger.error('Cannot get the list of owned videos.') - return next(err) - } - - res.json({ cert: cert, videos: videos_list }) - }) - }) - }) -} - -function listPods (req, res, next) { - Pods.list(function (err, pods_list) { - if (err) return next(err) - - res.json(pods_list) - }) -} - -function makeFriends (req, res, next) { - friends.makeFriends(function (err) { - if (err) return next(err) - - res.sendStatus(204) - }) -} - -function removePods (req, res, next) { - var url = req.body.signature.url - Pods.remove(url, function (err) { - if (err) return next(err) - - Videos.removeAllRemotesOf(url, function (err) { - if (err) logger.error('Cannot remove all remote videos of %s.', url) - else logger.info('%s pod removed.', url) - - res.sendStatus(204) - }) - }) -} - -function quitFriends (req, res, next) { - friends.quitFriends(function (err) { - if (err) return next(err) - - res.sendStatus(204) - }) -} diff --git a/controllers/api/v1/remoteVideos.js b/controllers/api/v1/remoteVideos.js deleted file mode 100644 index 475a874cf..000000000 --- a/controllers/api/v1/remoteVideos.js +++ /dev/null @@ -1,53 +0,0 @@ -'use strict' - -var express = require('express') -var pluck = require('lodash-node/compat/collection/pluck') - -var middleware = require('../../../middlewares') -var secureMiddleware = middleware.secure -var cacheMiddleware = middleware.cache -var reqValidator = middleware.reqValidators.remote -var videos = require('../../../models/videos') - -var router = express.Router() - -router.post('/add', - reqValidator.secureRequest, - secureMiddleware.decryptBody, - reqValidator.remoteVideosAdd, - cacheMiddleware.cache(false), - addRemoteVideos -) - -router.post('/remove', - reqValidator.secureRequest, - secureMiddleware.decryptBody, - reqValidator.remoteVideosRemove, - cacheMiddleware.cache(false), - removeRemoteVideo -) - -// --------------------------------------------------------------------------- - -module.exports = router - -// --------------------------------------------------------------------------- - -function addRemoteVideos (req, res, next) { - videos.addRemotes(req.body.data, function (err, videos) { - if (err) return next(err) - - res.json(videos) - }) -} - -function removeRemoteVideo (req, res, next) { - var url = req.body.signature.url - var magnetUris = pluck(req.body.data, 'magnetUri') - - videos.removeRemotesOfByMagnetUris(url, magnetUris, function (err) { - if (err) return next(err) - - res.sendStatus(204) - }) -} diff --git a/controllers/api/v1/videos.js b/controllers/api/v1/videos.js deleted file mode 100644 index 620711925..000000000 --- a/controllers/api/v1/videos.js +++ /dev/null @@ -1,144 +0,0 @@ -'use strict' - -var config = require('config') -var crypto = require('crypto') -var express = require('express') -var multer = require('multer') - -var logger = require('../../../helpers/logger') -var friends = require('../../../lib/friends') -var middleware = require('../../../middlewares') -var cacheMiddleware = middleware.cache -var reqValidator = middleware.reqValidators.videos -var Videos = require('../../../models/videos') // model -var videos = require('../../../lib/videos') -var webtorrent = require('../../../lib/webtorrent') - -var router = express.Router() -var uploads = config.get('storage.uploads') - -// multer configuration -var storage = multer.diskStorage({ - destination: function (req, file, cb) { - cb(null, uploads) - }, - - filename: function (req, file, cb) { - var extension = '' - if (file.mimetype === 'video/webm') extension = 'webm' - else if (file.mimetype === 'video/mp4') extension = 'mp4' - else if (file.mimetype === 'video/ogg') extension = 'ogv' - crypto.pseudoRandomBytes(16, function (err, raw) { - var fieldname = err ? undefined : raw.toString('hex') - cb(null, fieldname + '.' + extension) - }) - } -}) - -var reqFiles = multer({ storage: storage }).fields([{ name: 'input_video', maxCount: 1 }]) - -router.get('/', cacheMiddleware.cache(false), listVideos) -router.post('/', reqFiles, reqValidator.videosAdd, cacheMiddleware.cache(false), addVideo) -router.get('/:id', reqValidator.videosGet, cacheMiddleware.cache(false), getVideos) -router.delete('/:id', reqValidator.videosRemove, cacheMiddleware.cache(false), removeVideo) -router.get('/search/:name', reqValidator.videosSearch, cacheMiddleware.cache(false), searchVideos) - -// --------------------------------------------------------------------------- - -module.exports = router - -// --------------------------------------------------------------------------- - -function addVideo (req, res, next) { - var video_file = req.files.input_video[0] - var video_infos = req.body - - videos.seed(video_file.path, function (err, torrent) { - if (err) { - logger.error('Cannot seed this video.') - return next(err) - } - - var video_data = { - name: video_infos.name, - namePath: video_file.filename, - description: video_infos.description, - magnetUri: torrent.magnetURI - } - - Videos.add(video_data, function (err) { - if (err) { - // TODO unseed the video - logger.error('Cannot insert this video in the database.') - return next(err) - } - - // Now we'll add the video's meta data to our friends - friends.addVideoToFriends(video_data) - - // TODO : include Location of the new video - res.sendStatus(201) - }) - }) -} - -function getVideos (req, res, next) { - Videos.get(req.params.id, function (err, video) { - if (err) return next(err) - - if (video === null) { - return res.sendStatus(404) - } - - res.json(video) - }) -} - -function listVideos (req, res, next) { - Videos.list(function (err, videos_list) { - if (err) return next(err) - - res.json(videos_list) - }) -} - -function removeVideo (req, res, next) { - var video_id = req.params.id - Videos.get(video_id, function (err, video) { - if (err) return next(err) - - removeTorrent(video.magnetUri, function () { - Videos.removeOwned(req.params.id, function (err) { - if (err) return next(err) - - var params = { - name: video.name, - magnetUri: video.magnetUri - } - - friends.removeVideoToFriends(params) - res.sendStatus(204) - }) - }) - }) -} - -function searchVideos (req, res, next) { - Videos.search(req.params.name, function (err, videos_list) { - if (err) return next(err) - - res.json(videos_list) - }) -} - -// --------------------------------------------------------------------------- - -// Maybe the torrent is not seeded, but we catch the error to don't stop the removing process -function removeTorrent (magnetUri, callback) { - try { - webtorrent.remove(magnetUri, callback) - } catch (err) { - logger.warn('Cannot remove the torrent from WebTorrent', { err: err }) - return callback(null) - } -} -- cgit v1.2.3