formation 4 anos atrás
pai
commit
e27b212b17

+ 22 - 0
express-server/routes/auth.js

@@ -0,0 +1,22 @@
+const express = require('express');
+const router = express.Router();
+const userCtrl = require('../controllers/auth');
+
+
+
+
+//inscription
+router.post('/signup', userCtrl.signup);
+
+//connection
+router.post('/login', userCtrl.login);
+
+
+
+router.put('/forgot-password', userCtrl.forgotPassword);
+
+router.put('/reset-password', userCtrl.resetPassword);
+
+
+
+module.exports = router;

+ 31 - 0
express-server/routes/contact.js

@@ -0,0 +1,31 @@
+const express = require('express');
+const router = express.Router();
+const contactController = require('../controllers/contact')
+const authorize = require('../middleware/authorize');
+const Role = require('../lib/role')
+
+
+//ajout de contact 
+router.post('/', contactController.addContact );
+
+//get notification
+router.get('/notification',  contactController.notificationContact );
+
+//get contact not closed 
+router.get('/open',  contactController.getnotclosedContact );
+
+//get contact  closed 
+router.get('/closed',  contactController.getclosedContact );
+
+//response contact 
+router.post('/response',  contactController.ResponseContact );
+
+//close contact 
+router.patch('/close',  contactController.CloseContact );
+
+
+
+
+
+
+module.exports = router; 

+ 20 - 0
express-server/routes/emailing.js

@@ -0,0 +1,20 @@
+const express = require('express');
+const router = express.Router();
+const EmailController = require('../controllers/email');
+
+
+
+
+//post email 
+router.post("/send",  EmailController.sendEmail);
+
+//get email 
+router.get("/",  EmailController.getEmail);
+
+
+
+
+
+
+
+module.exports = router; 

+ 33 - 0
express-server/routes/employee.js

@@ -0,0 +1,33 @@
+const express = require('express');
+const router = express.Router();
+const authorize = require('../middleware/authorize');
+const Role = require('../lib/role')
+const EmployeeController = require('../controllers/employee');
+const GainController = require('../controllers/gain');
+
+
+
+//add employee
+router.post("/", EmployeeController.postEmployee);
+
+// get all employees
+router.get("/", EmployeeController.getAllEmployees);
+
+// //get user by id
+// router.get('/:id', authorize([Role.Client,Role.Employee,Role.Admin]), UserController.getUserById);
+
+// //delete user by id
+// router.delete('/:id', authorize(Role.Admin), UserController.deleteUserById);
+
+// //patch by id
+// router.patch('/:id', authorize([Role.Client,Role.Employee,Role.Admin]), UserController.patchUserById)
+
+// //post code gain
+// router.post('/gain', authorize(Role.Client), GainController.gain);
+
+
+
+
+
+
+module.exports = router; 

+ 36 - 0
express-server/routes/facebook.js

@@ -0,0 +1,36 @@
+const express = require('express');
+const router = express.Router();
+const { Email } = require('../models/email.model');
+const { User } = require('../models/user.model');
+const nodemailer = require('nodemailer');
+
+const passport = require('passport');
+const  FacebookStrategy  = require('passport-facebook').Strategy;
+
+passport.use(new FacebookStrategy({
+    clientID: "858430034656858",
+    clientSecret: "fa4dc01a464dcea3b51d4ff538b79490",
+    callbackURL: "http://localhost:4000/api/auth/facebook/callback"
+  },
+  (accessToken, refreshToken, profile, done) => {
+   try{
+    console.log('acces token ',accessToken);
+    console.log('refresh token ',refreshToken);
+    console.log('prfile ',profile);
+    console.log('done ',done);
+}  catch(error){
+   console.log(error)
+}
+    
+  }
+));
+
+
+router.get('/', passport.authenticate('facebook' ) );
+router.get('/callback',  passport.authenticate('facebook',
+ { successRedirect: '/profile',
+  failureRedirect: '/'}
+  ));
+
+
+module.exports = router; 

+ 177 - 0
express-server/routes/google.js

@@ -0,0 +1,177 @@
+const express = require('express');
+const router = express.Router();
+const { Email } = require('../models/email.model');
+const { User } = require('../models/user.model');
+const nodemailer = require('nodemailer');
+
+const passport = require('passport');
+const GoogleStrategy = require('passport-google-oauth20').Strategy;
+
+router.use(passport.initialize());
+// router.use(passport.session());
+
+
+passport.serializeUser(function (user, done) {
+  done(null, user);
+});
+
+
+passport.deserializeUser(function (user, done) {
+  done(null, user);
+});
+
+
+// passport.use(new GoogleStrategy({
+//     clientID: "931209872114-5glro42kjofspf239h7n7tq21f6ntgqq.apps.googleusercontent.com",
+//     clientSecret: "sBiZm-fvgtCVVF3db7naVEwn",
+//     callbackURL: "http://localhost:4000/api/auth/google/callback"
+//   },
+
+//      async  (accessToken, refreshToken, profile, done) => {
+
+
+//       console.log(profile.emails[0].value)
+
+//        return done(null, profile);
+
+//  var email = profile.emails[0].value
+// const user =  await User.findOne({email: email})
+
+
+// if (user) {
+//   console.log(user)
+//   user.username = accessToken;
+
+
+//   user.save().then(()=>{
+//     return done(null, user);
+//   })
+// }else{
+
+// console.log('creation of user')
+// make a new record
+// let user = await new User({
+//   googleId: profile.id,
+//   email: profile.emails[0].value,
+//   accessToken : accessToken,
+//   refreshToken : refreshToken
+// }).save()
+// done(null, user);
+// }
+
+
+
+
+
+// console.log('acces token ',accessToken);
+// console.log('refresh token ',refreshToken);
+//  console.log('prfile ',profile.emails[0].value);
+// console.log('done ',done);
+
+
+//   }
+// ));
+
+
+
+
+
+
+
+
+
+
+passport.use(new GoogleStrategy({
+  clientID: "931209872114-5glro42kjofspf239h7n7tq21f6ntgqq.apps.googleusercontent.com",
+  clientSecret: "sBiZm-fvgtCVVF3db7naVEwn",
+  callbackURL: "http://localhost:4000/api/auth/google/callback"
+},
+  function (request, accessToken, refreshToken, profile, done) {
+
+    
+    User.findOne({ email: profile.emails[0].value })
+      .then(
+        (user) => {
+          if (user) {
+            //if we already have a record with the given profile ID
+            done(null, user);
+            console.log('profile', user)
+            
+          } else {
+            //if not, create a new user 
+            // new User({
+            //   googleId: profile.id,
+            // }).save().then((newUser) => {
+            //   done(null, newUser)
+            // }
+            // )
+            console.log('done')
+            done(null, newUser)
+          }
+        }
+      )
+      .catch()
+    // User.findOne({ email: profile.emails[0].value }, function(err, user) {
+    //   if(err) {
+    //     console.log(err);  // handle errors!
+    //   }
+    //   if (!err && user !== null) {
+    //     console.log(user)
+    //     done(null, user);
+    //   } else {
+    //     console.log('fqsdffqef')
+    // user = new User({
+    //   oauthID: profile.id,
+    //   name: profile.displayName,
+    //   created: Date.now()
+    // });
+    // user.save(function(err) {
+    //   if(err) {
+    //     console.log(err);  // handle errors!
+    //   } else {
+    //     console.log("saving user ...");
+    //     done(null, user);
+    //   }
+    // });
+    //   }
+    // });
+  }
+));
+
+
+
+
+
+router.get('/', passport.authenticate('google', { session: false, scope: ['profile', 'email'] }));
+
+// router.get('/callback', passport.authenticate('google') )
+
+
+
+router.get('/callback',  passport.authenticate('google', { failureRedirect: '/failed' }),
+  function (req, res) {
+    // res.redirect('/good')
+    // console.log("success");
+    // // Successful authentication, redirect home.
+     res.status(200).json('ds');
+  });
+
+
+//failed auth google 
+router.get('/failed', async (req, res) => { res.status(404).send('erreur authentification') })
+
+
+
+//get all users
+router.get('/good', async (req, res) => {
+
+  res.status(200).send('welcome mr ');
+})
+
+
+
+
+
+
+
+module.exports = router; 

+ 18 - 0
express-server/routes/restaurant.js

@@ -0,0 +1,18 @@
+const express = require('express');
+const router = express.Router();
+const authorize = require('../middleware/authorize');
+const Role = require('../lib/role')
+const RestaurantController = require('../controllers/restaurant');
+
+
+
+
+//get all restaurants
+router.get("/",  RestaurantController.getAllRestaurants);
+
+//post restaurants
+router.post("/",  RestaurantController.postAllRestaurants);
+
+
+
+module.exports = router; 

+ 16 - 0
express-server/routes/ticket.js

@@ -0,0 +1,16 @@
+const express = require('express');
+const router = express.Router();
+const StatistiqueController = require('../controllers/statistique');
+
+
+
+//get statistique
+router.get("/stats",  StatistiqueController.getStatistique);
+
+
+
+
+
+
+
+module.exports = router; 

+ 21 - 0
express-server/routes/tirage.js

@@ -0,0 +1,21 @@
+const express = require('express');
+const router = express.Router();
+const tirageController = require('../controllers/tirage')
+const authorize = require('../middleware/authorize');
+const Role = require('../lib/role')
+
+
+
+//tirage au sort 
+router.get('/', authorize(Role.Admin), tirageController.getTirage );
+
+//date du tirage au sort 
+router.post('/date', authorize(Role.Admin), tirageController.postDateTirage );
+
+//gagnant du tirage au sort 
+router.get('/winner',  authorize(Role.Admin), tirageController.getWinnerTirage);
+
+
+
+
+module.exports = router; 

+ 160 - 0
express-server/routes/user.js

@@ -0,0 +1,160 @@
+const { User } = require('../models/user.model');
+const express = require('express');
+const router = express.Router();
+const authorize = require('../middleware/authorize');
+const Role = require('../lib/role')
+const UserController = require('../controllers/user');
+const GainController = require('../controllers/gain');
+const { LimitRequests } = require ('../middleware/limit-requests')
+
+
+
+//get all users
+router.get("/",  UserController.getAllUsers);
+
+//get user by id
+router.get('/:id',  UserController.getUserById);
+// router.get('/:id', authorize([Role.Client,Role.Employee,Role.Admin]), UserController.getUserById);
+
+//delete user by id
+router.delete('/:id', UserController.deleteUserById);
+
+//patch by id
+router.patch('/:id',  UserController.patchUserById)
+// router.patch('/:id', authorize([Role.Client,Role.Employee,Role.Admin]), UserController.patchUserById)
+
+//post code gain
+// router.post('/gain', authorize(Role.Client), GainController.gain);
+router.post('/gain', GainController.gain);
+
+
+module.exports = router; 
+
+
+
+
+
+
+
+
+
+// <div class="container navtop">
+
+// <h2 class="text-center titre font-weight-bold"><b> Tour du véhicule</b></h2>
+
+
+// <div class=" row justify-content-center mt-3 ">
+//   <div class="col-10 col-md-6">
+//   <img [src]="img" class="img-fluid" alt="clem">
+// </div>
+// </div>
+
+
+// <div class=" row justify-content-center mt-3 ">
+//   <h3 class="col-7 col-md-4 text-center txt font-weight-bold" style="color: red;">
+//     Veuillez sélectionner les éléments accidentés :</h3>
+// </div>
+
+
+
+
+//           <!-- zone 1 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 1</b></h3>
+//       <li *ngFor="let item of zone1">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+//           <!-- zone 2 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 2</b></h3>
+//       <li *ngFor="let item of zone2">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+//           <!-- zone 3 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 3</b></h3>
+//       <li *ngFor="let item of zone3">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+//            <!-- zone 4 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 4</b></h3>
+//       <li *ngFor="let item of zone4">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+//     <!-- zone 5 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 5</b></h3>
+//       <li *ngFor="let item of zone5">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+
+//     <!-- zone 6 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 6</b></h3>
+//       <li *ngFor="let item of zone6">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+//     <!-- zone 7 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 7</b></h3>
+//       <li *ngFor="let item of zone7">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+
+//     <!-- zone 8 -->
+//     <ul>
+//       <h3 class="titre font-weight-bold zone"><b>ZONE 8</b></h3>
+//       <li *ngFor="let item of zone8">
+//         <mat-checkbox [(ngModel)]="item.checked">
+//           {{item.name}}
+//         </mat-checkbox>
+//       </li>
+//     </ul>
+
+
+
+
+
+
+// <div class=" row justify-content-center mt-3 mb-5">
+//   <button class="col-8 col-md-4" mat-raised-button color="primary" (click)="sendCheck()">
+//     <b> Valider</b></button>
+// </div>
+
+
+
+
+
+
+// </div>
+
+