From 16b04f1b91e39324169a38a3ca391efa95bf6f98 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Y=C3=BBki=20Vachot?= Date: Fri, 10 Dec 2021 11:53:25 +0100 Subject: [PATCH] Update: Playlist.create --- .../controllers/playlist.controller.js | 31 +++++++++++++++++-- 1 file changed, 29 insertions(+), 2 deletions(-) diff --git a/app-backend/controllers/playlist.controller.js b/app-backend/controllers/playlist.controller.js index feefb94..0b129e5 100644 --- a/app-backend/controllers/playlist.controller.js +++ b/app-backend/controllers/playlist.controller.js @@ -6,8 +6,35 @@ const Playlist = db.playlists; // Create a new Playlist exports.create = (req, res) => { const token = checkLogin(req, res); - if(token){ - return sendError(res, 501, -1, "Playlist.create not Implemented", token); + if(token && req.body.name){ + Playlist.exists({name: req.body.name}, function (err, docs){ + if(err){ + sendError(res, 500,100,err.message || "Some error occurred while checking if the Playlist already exists.", token); + } else{ + if(docs === null) { + let playlist; + + playlist = new Playlist({ + userId: token.id, + name: req.body.name, + videoIds: req.body.videoIds ? req.body.videoIds : undefined, + isActive: req.body.isActive ? req.body.isActive : undefined + }); + + // Save User in the database + playlist + .save(playlist) + .then(data => { + return sendMessage(res, 21, data, token) + }) + .catch(err => { + return sendError(res, 500,100,err.message || "Some error occurred while creating the Playlist.", token); + }); + } else{ + return sendError(res, 500, 104, err || `Playlist ${req.body.name} already exists.`, token); + } + } + }); } };