router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add({ userId: req.user.id, ...req.body }); res.json(book); } catch (err) { logger.error(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.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.get('/books/:slug', async (req, res) => { try { const book = await Book.getBySlug({ slug: req.params.slug, userId: req.user && req.user.id }); res.json(book); } catch (err) { res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add(Object.assign({ userId: req.user.id }, req.body)); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });
router.post('/books/add', async (req, res) => { try { const book = await Book.add({ userId: req.user.id, ...req.body }); res.json(book); } catch (err) { logger.error(err); res.json({ error: err.message || err.toString() }); } });