Team Ai
Apppublic

ctrlv-ince/gamezone-react-native

sourceHugging Facemitupdated 7mo agoView on Hugging Face
0likes
categoryController.js66 linesDownload Raw Back to controllers
1const { Category } = require('../models/category');2 3exports.getCategories = async (req, res) => {4    const categoryList = await Category.find();5 6    if (!categoryList) {7        return res.status(500).json({ success: false });8    }9    res.status(200).send(categoryList);10};11 12exports.getCategoryById = async (req, res) => {13    const category = await Category.findById(req.params.id);14 15    if (!category) {16        return res.status(500).json({ message: 'The category with the given ID was not found.' });17    }18    res.status(200).send(category);19};20 21exports.createCategory = async (req, res) => {22    let category = new Category({23        name: req.body.name,24        icon: req.body.icon,25        color: req.body.color26    });27    category = await category.save();28 29    if (!category) return res.status(400).send('the category cannot be created!');30 31    res.send(category);32};33 34exports.updateCategory = async (req, res) => {35    const existingCategory = await Category.findById(req.params.id);36    if (!existingCategory) return res.status(400).send('Category not found!');37 38    const category = await Category.findByIdAndUpdate(39        req.params.id,40        {41            name: req.body.name,42            icon: req.body.icon || existingCategory.icon,43            color: req.body.color44        },45        { new: true }46    );47 48    if (!category) return res.status(400).send('the category cannot be created!');49 50    res.send(category);51};52 53exports.deleteCategory = (req, res) => {54    Category.findByIdAndDelete(req.params.id)55        .then((category) => {56            if (category) {57                return res.status(200).json({ success: true, message: 'the category is deleted!' });58            } else {59                return res.status(404).json({ success: false, message: 'category not found!' });60            }61        })62        .catch((err) => {63            return res.status(500).json({ success: false, error: err });64        });65};66