diff --git a/db/custompages.js b/db/custompages.js index e1930e90..01f738ea 100644 --- a/db/custompages.js +++ b/db/custompages.js @@ -43,7 +43,7 @@ module.exports = { '$in': pages }, 'board': board - }) + }); }, deleteBoard: (board) => { diff --git a/models/forms/deletecustompage.js b/models/forms/deletecustompage.js index c662b612..c01e1b75 100644 --- a/models/forms/deletecustompage.js +++ b/models/forms/deletecustompage.js @@ -7,7 +7,15 @@ const uploadDirectory = require(__dirname+'/../../helpers/files/uploadDirectory. module.exports = async (req, res, next) => { - await CustomPages.deleteMany(req.body.checkedcustompages, req.params.board); + const deletedCount = await CustomPages.deleteMany(req.body.checkedcustompages, req.params.board).then(res => res.deletedCount); + + if (deletedCount === 0) { + return dynamicResponse(req, res, 400, 'message', { + 'title': 'Bad Request', + 'message': 'Invalid custom pages selected', + 'redirect': `/${req.params.board}/manage/custompages.html` + }); + } await Promise.all(req.body.checkedcustompages.map(page => { remove(`${uploadDirectory}/html/${req.params.board}/custompage/${page}.html`)