module.exports = function registerSlidesRoutes(app, deps) { const pages = deps.pages; const common = deps.common; const pool = deps.pool; const { buildPagination } = require('../../../lib/pagination'); const requirePermission = deps.requirePermission; const LIST_PAGE_SIZE = 10; app.get('/slides', requirePermission('slides.read'), async function (req, res, next) { try { const page = Math.max(1, Math.floor(Number(req.query.page) || 1)); const data = await common.fetchSlidesPage(pool, page, LIST_PAGE_SIZE); res.send(pages.renderSlidesPage({ slides: data.slides || [], pagination: buildPagination(data.totalItems, data.currentPage, 'page', {}, LIST_PAGE_SIZE, 'slides', 'Slide pages') }, req.query.message ? String(req.query.message) : '', req.currentUser)); } catch (error) { next(error); } }); };