diff options
Diffstat (limited to 'server/controllers')
-rw-r--r-- | server/controllers/api/v1/videos.js | 26 |
1 files changed, 7 insertions, 19 deletions
diff --git a/server/controllers/api/v1/videos.js b/server/controllers/api/v1/videos.js index 231309c5e..c6dbfbaf2 100644 --- a/server/controllers/api/v1/videos.js +++ b/server/controllers/api/v1/videos.js | |||
@@ -83,23 +83,11 @@ function addVideo (req, res, next) { | |||
83 | const videoInfos = req.body | 83 | const videoInfos = req.body |
84 | 84 | ||
85 | async.waterfall([ | 85 | async.waterfall([ |
86 | function (callback) { | 86 | function seedTheVideo (callback) { |
87 | videos.seed(videoFile.path, callback) | 87 | videos.seed(videoFile.path, callback) |
88 | }, | 88 | }, |
89 | 89 | ||
90 | function seed (torrent, callback) { | 90 | function createThumbnail (torrent, callback) { |
91 | videos.getVideoDuration(videoFile.path, function (err, duration) { | ||
92 | if (err) { | ||
93 | // TODO: unseed the video | ||
94 | logger.error('Cannot retrieve metadata of the file.') | ||
95 | return next(err) | ||
96 | } | ||
97 | |||
98 | callback(null, torrent, duration) | ||
99 | }) | ||
100 | }, | ||
101 | |||
102 | function createThumbnail (torrent, duration, callback) { | ||
103 | videos.createVideoThumbnail(videoFile.path, function (err, thumbnailName) { | 91 | videos.createVideoThumbnail(videoFile.path, function (err, thumbnailName) { |
104 | if (err) { | 92 | if (err) { |
105 | // TODO: unseed the video | 93 | // TODO: unseed the video |
@@ -107,18 +95,18 @@ function addVideo (req, res, next) { | |||
107 | return callback(err) | 95 | return callback(err) |
108 | } | 96 | } |
109 | 97 | ||
110 | callback(null, torrent, duration, thumbnailName) | 98 | callback(null, torrent, thumbnailName) |
111 | }) | 99 | }) |
112 | }, | 100 | }, |
113 | 101 | ||
114 | function insertIntoDB (torrent, duration, thumbnailName, callback) { | 102 | function insertIntoDB (torrent, thumbnailName, callback) { |
115 | const videoData = { | 103 | const videoData = { |
116 | name: videoInfos.name, | 104 | name: videoInfos.name, |
117 | namePath: videoFile.filename, | 105 | namePath: videoFile.filename, |
118 | description: videoInfos.description, | 106 | description: videoInfos.description, |
119 | magnetUri: torrent.magnetURI, | 107 | magnetUri: torrent.magnetURI, |
120 | author: res.locals.oauth.token.user.username, | 108 | author: res.locals.oauth.token.user.username, |
121 | duration: duration, | 109 | duration: videoFile.duration, |
122 | thumbnail: thumbnailName | 110 | thumbnail: thumbnailName |
123 | } | 111 | } |
124 | 112 | ||
@@ -130,11 +118,11 @@ function addVideo (req, res, next) { | |||
130 | return callback(err) | 118 | return callback(err) |
131 | } | 119 | } |
132 | 120 | ||
133 | return callback(null, torrent, duration, thumbnailName, videoData, insertedVideo) | 121 | return callback(null, torrent, thumbnailName, videoData, insertedVideo) |
134 | }) | 122 | }) |
135 | }, | 123 | }, |
136 | 124 | ||
137 | function getThumbnailBase64 (torrent, duration, thumbnailName, videoData, insertedVideo, callback) { | 125 | function getThumbnailBase64 (torrent, thumbnailName, videoData, insertedVideo, callback) { |
138 | videoData.createdDate = insertedVideo.createdDate | 126 | videoData.createdDate = insertedVideo.createdDate |
139 | 127 | ||
140 | fs.readFile(thumbnailsDir + thumbnailName, function (err, thumbnailData) { | 128 | fs.readFile(thumbnailsDir + thumbnailName, function (err, thumbnailData) { |