const router = require('express').Router() const Review = require('../models/review') const Product = require('../models/product') const virifyToken = require('../middlewares/verify-token') const upload = require('../middlewares/upload-photo') router.post('/reviews/:productID', [virifyToken, upload.single('photo')], async (req, res) => { try { const review = new Review() review.headline = req.body.headline review.body = req.body.body review.rating = req.body.rating review.photo = req.file.location review.productID = req.params.productID review.user = req.decoded._id await Product.update({ $push: { reviews: review._id } }) const saveReviews = await review.save() if (saveReviews) { res.json({ success: true, message: 'Successfully Added Review' }) } } catch (err) { res.status(500).json({ success: false, message: err.message }) } }) router.get('/reviews/:productID', async(req, res) => { try { const productReviews = await Review.find({ productID: req.params.productID }) .populate('user') .exec() res.json({ success: true, reviews: productReviews }) } catch (err) { res.status(500).json({ success: false, message: err.message }) } }) module.exports = router