Skip to content
Snippets Groups Projects
Select Git revision
  • 2fbcdcdd2900e7837b3269e69e803e1a03cdaed2
  • main default protected
  • 39-retour-utilisateur-sur-le-compteur
3 results

Main.java

Blame
  • index.controller.js 2.05 KiB
    const User = require('../models/user.model').model;
    const path = require('path');
    const { use } = require('../app');
    
    
      module.exports.home = (_,res) => res.sendFile(path.join(__dirname, '../public/html/user.html'));
      
      module.exports.listShow = async (_,res) => {
        const allShows = await Shows.find();
        res.status(200).json(allShows);
      }
    
      module.exports.listTickets = async (req,res) => {
        const user = await User.findById(req.userId);
        console.log(user);
        res.status(200).json(user.reservedTickets);
      }
    
      module.exports.me =
        async (req, res) =>  {
          const user = await User.findById(req.userId);
          console.log(user);
          console.log(req.userId);
          res.status(200).json({ name : user.name, admin : user.admin});
        }
      
      module.exports.deleteTickets =
        async (req, res) => {
          try {
            await User.updateMany(
              { "reservedTickets.show": req.params.showId },
              { $pull: { reservedTickets: { show: req.params.showId } } },
            )
            res.status(200).json(req.params.showId);
          }catch(error) {
            throw error;
          }
        }
    
      module.exports.update =
        async (req,res) => {
          try {
            const updatedData = { ...req.body };
            const updated = await User.updateOne(
              { _id: req.userId, "reservedTickets.show": updatedData.show },
              {$set : {
                "reservedTickets.$.description": updatedData.description,
                "reservedTickets.$.tickets": updatedData.tickets,
              },
            });
            if (updated.modifiedCount === 0) {
              const user = await User.findByIdAndUpdate(req.userId,
                { $push: { reservedTickets: updatedData } },
                { new : true });
            } 
              res.status(200).json({ description : updatedData.description , message : 'mise à jour réussie'});  
          } catch(error) {
            console.log(error.errmsg)
            res.status(400).json(error.errmsg);
          }
      }    
      module.exports.about =
          (req, res) => res.render('about');
      
      module.exports.adminonly =
          (req, res) => res.render('adminonly');