From e61becaeb9bfadda0f5ee68c0715edfbba8aef05 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9A=D1=83=D1=88=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=20=D0=A0?= =?UTF-8?q?=D1=83=D1=81=D0=BB=D0=B0=D0=BD=20=D0=9A=D0=B0=D0=BC=D0=B8=D0=BB?= =?UTF-8?q?=D0=B5=D0=B2=D0=B8=D1=87?= Date: Mon, 24 Dec 2018 01:17:37 +0300 Subject: [PATCH] filter available pages --- src/routes/pages.js | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/routes/pages.js b/src/routes/pages.js index 62a788c..c4a3df7 100644 --- a/src/routes/pages.js +++ b/src/routes/pages.js @@ -24,6 +24,18 @@ router.get('/page/edit/:id', async (req, res, next) => { let page = await Pages.get(pageId); let pagesAvailable = await Pages.getAll(); + (function childrenRemove(parent) { + pagesAvailable.forEach((item, index) => { + if (item !== null && item._parent === parent) { + pagesAvailable[index] = null; + childrenRemove(item._id); + return false; + } + return true; + }); + })(page._id); + pagesAvailable = pagesAvailable.filter((item) => item !== null); + res.render('pages/form', { pagesAvailable, page