router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.get('/get-chapter-detail', async (req, res) => { try { const { bookSlug, chapterSlug } = req.query; const chapter = await Chapter.getBySlug({ bookSlug, chapterSlug, userId: req.user && req.user.id, isAdmin: req.user && req.user.isAdmin, }); res.json(chapter); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.use('/users', (req, res, next) => { if (req.user && req.user.isAdmin) { next(); return; } res.status(401).send('Not authorized'); });
router.get('/verify', (req, res) => { res.json({ initialUser: req.initialUser, username: req.user && req.user.username, isAdmin: req.user && req.user.isAdmin, }); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.use((req, res, next) => { if (!req.user || !req.user.isAdmin) { res.status(401).json({ error: 'Unauthorized' }); return; } next(); });
router.get('/get-chapter-detail', async (req, res) => { try { const { bookSlug, chapterSlug } = req.query; const chapter = await Chapter.getBySlug({ bookSlug, chapterSlug, userId: req.user && req.user.id, isAdmin: req.user && req.user.isAdmin, }); res.json(chapter); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.get('/get-chapter-detail', async (req, res) => { try { const { bookSlug, chapterSlug } = req.query; const chapter = await Chapter.getBySlug({ bookSlug, chapterSlug, userId: req.user && req.user.id, isAdmin: req.user && req.user.isAdmin, }); res.json(chapter); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.get('/get-chapter-detail', async (req, res) => { try { const { bookSlug, chapterSlug } = req.query; const chapter = await Chapter.getBySlug({ bookSlug, chapterSlug, userId: req.user && req.user.id, isAdmin: req.user && req.user.isAdmin, }); res.json(chapter); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.get('/get-chapter-detail', async (req, res) => { try { const { bookSlug, chapterSlug } = req.query; const chapter = await Chapter.getBySlug({ bookSlug, chapterSlug, userId: req.user && req.user.id, isAdmin: req.user && req.user.isAdmin, }); res.json(chapter); } catch (err) { res.json({ error: err.message || err.toString() }); } });