**
-Мой менеджер маршрутов панели управления #
**
--------------------------------
> ``` >const express=require('express');
> >
> > const router=express.Router();
> >
> >
> > var view = "./views/"
> >
> > router.get('/dashboard', (req, res) => {
> > if (req.session.user) {
> > res.sendFile('managerdashboard.html', { root: view });
> > } else {
> > res.redirect('/managersignin/managersignin')
> > console.log('cannot find session')
> > }
> > })
> >
> > module.exports = router;```
>
# * Маршруты регистрации моего менеджера *> ================================= ==
```const express=require('express');
> const mongoose=require('mongoose');
> const router=express.Router();
>
> var view = "./views/"
> require('../model/managersignupmodel')
> const Managersignup= mongoose.model('Managersignup');
>
> //displays the Dashboardsignup page
> router.get('/managersignup', (req,res) => {
> res.sendFile('managersignup.html', { root: view });
> })
>
> router.post("/managersignup", async (req, res) => {
> try {
> const items = new Managersignup(req.body);
> await Managersignup.register(items, req.body.password, (err) => {
> if (err) { throw err }
> res.redirect('/managersignin/managersignin')
> })
> } catch (err) {
> res.status(400).send('Sorry! Something went wrong.')
> console.log(err)
> }
> })
>
> module.exports=router;```
- Мой менеджер входит в маршруты *
-----------------------------
```> const express=require('express');
> const passport = require('passport');
> const router=express.Router();
>
> var view = "./views/"
>
> //displays the Dashboardsignup page
> router.get('/managersignin', (req,res) => {
> // res.render('managersignin.html')
> res.sendFile('managersignin.html', { root: view });
> })
>
> router.post("/managersignin",passport.authenticate('local'),(req, res) => {
> req.session.user = req.user;
> res.redirect('/dashboard/dashboard');
> });
> module.exports=router;```
**** My manager signup model routes *
----------------------------------***
```> const mongoose = require('mongoose');
> const passportLocalMongoose = require('passport-local-mongoose');
> const managersignupsSchema = new mongoose.Schema({
> username: {
> type: String,
> unique: true,
> required: 'Please Enter Your Email'
> },
> password: {
> type: String,
> required: 'Please Enter password'
> },
> });
> managersignupsSchema.plugin(passportLocalMongoose, {
> username: 'email'
> });
> module.exports = mongoose.model('Managersignup', managersignupsSchema);```
>
***
-Как я назвал свои файлы в своем индексе. js файл, также известный как сервер. js
------------------------------------------------------------------
``` > const Managersignup=require('./model/managersignupmodel');
> //Manager Dashboard Sign up Passport configs
> passport.use(Managersignup.createStrategy());
> passport.serializeUser(Managersignup.serializeUser());
> passport.deserializeUser(Managersignup.deserializeUser());```
>
***
-Если вы хотите увидеть весь мой индекс. js файл, вот как я их организовал. -------------------------------------------------- ----------------------
``` > const express = require('express');
>
> const path = require('path');
> const registrationformRoutes=require('./routes/registrationformroutes')
> const registrationpugRoutes=require('./routes/registrationformroutes')
> const signupformRoutes=require('./routes/signupformroutes')
> const signinformRoutes=require('./routes/signinformroutes')
> const dashboardformRoutes=require('./routes/managerdashboardroutes')
> const salesdashboardformRoutes=require('./routes/salesdashboardroutes')
> const indexRoutes=require('./routes/indexroutes')
> const aboutusRoutes=require('./routes/aboutusroutes')
> const salesRoutes=require('./routes/salesroutes')
> const addproductformRoutes=require('./routes/addproductformroutes')
> const cartformRoutes=require('./routes/cartformroutes')
> const purchaseformRoutes=require('./routes/purchaseroutes')
> const cardpaymentformRoutes=require('./routes/cardpaymentformroutes')
> const managersignupformRoutes=require('./routes/managersignuproutes')
> const managersigninformRoutes=require('./routes/managersigninroutes')
> const salessignupformRoutes=require('./routes/salessignuproutes')
> const salessigninformRoutes=require('./routes/salessigninroutes')
> const logoutprofileformRoutes=require('./routes/logoutprofileroutes')
>
> const bodyParser= require('body-parser')
>
> const expressSession = require('express-session')({
> secret: 'secret',
> resave: false,
> saveUninitialized: false
> });
> const passport = require('passport');
>
> //mongoose
> require('dotenv').config();
> const mongoose = require('mongoose');
>
> const Signup=require('./model/signupmodel');
> const Registration=require('./model/registrationmodel');
> const Addproduct=require('./model/addproductmodel');
> const Cart=require('./model/cartmodel');
> const Managersignup=require('./model/managersignupmodel');
> const Salessignup=require('./model/salessignupmodel');
> const Purchase=require('./model/purchaseformmodel');
> const Cardpayment=require('./model/cardpaymentmodel');
>
> const app = express();
>
> //db
> mongoose.connect(process.env.DATABASE, {
> useNewUrlParser: true,
> useUnifiedTopology: true,
> useCreateIndex: true,
> });
>
> mongoose.connection
> .on('open', () => {
> console.log('Mongoose connection open');
> })
> .on('error', (err) => {
> console.log(`Connection error: ${err.message}`);
> });
>
>
>
> var view = "./views/"
> //calling html file in the view folder this helps in using html if you dont want to use Pug.
> // var view = "./views/";
>
> app.set('view engine', 'pug')
> app.set('views', './views');
>
> //Setting up the view engine Pug but you are not using it in your project.
> // app.set('view engine', 'pug');
> // app.set('views', './views')
>
> app.use(express.urlencoded({extended:true}))
> app.use(bodyParser.urlencoded({extended: true}))
>
> app.use(expressSession);
>
> app.use(express.static(path.join(__dirname, "public")));
>
> app.use(passport.initialize());
> app.use(passport.session());
>
> // Registration Passport configs
> passport.use(Registration.createStrategy());
> passport.serializeUser(Registration.serializeUser());
> passport.deserializeUser(Registration.deserializeUser());
>
> //Sign up Passport configs
> passport.use(Signup.createStrategy());
> passport.serializeUser(Signup.serializeUser());
> passport.deserializeUser(Signup.deserializeUser());
>
> //Add product Passport configs
> passport.use(Addproduct.createStrategy());
> passport.serializeUser(Addproduct.serializeUser());
> passport.deserializeUser(Addproduct.deserializeUser());
>
> //Manager Dashboard Sign up Passport configs
> passport.use(Managersignup.createStrategy());
> passport.serializeUser(Managersignup.serializeUser());
> passport.deserializeUser(Managersignup.deserializeUser());
>
> //Sales Agent Sign Up Dashboard Passport configs
> passport.use(Salessignup.createStrategy());
> passport.serializeUser(Salessignup.serializeUser());
> passport.deserializeUser(Salessignup.deserializeUser());
>
> //Purchase Form Passport configs
> passport.use(Purchase.createStrategy());
> passport.serializeUser(Purchase.serializeUser());
> passport.deserializeUser(Purchase.deserializeUser());
>
> //Card Payment Form Passport configs
> passport.use(Cardpayment.createStrategy());
> passport.serializeUser(Cardpayment.serializeUser());
> passport.deserializeUser(Cardpayment.deserializeUser());
>
>
>
>
>
> //Registering use of middleware.
> app.use('/',indexRoutes);
> app.use('/registration',registrationformRoutes);
> app.use('/signup',signupformRoutes);
> app.use('/signin',signinformRoutes);
> app.use('/dashboard',dashboardformRoutes);
> app.use('/salesdashboard',salesdashboardformRoutes);
> app.use('/register',registrationpugRoutes);
> app.use('/addproduct',addproductformRoutes);
> app.use('/aboutus',aboutusRoutes);
> app.use('/sales',salesRoutes);
> app.use ('/cart',cartformRoutes);
> app.use('/purchase',purchaseformRoutes);
> app.use ('/cardpayment',cardpaymentformRoutes);
> app.use('/managersignup',managersignupformRoutes);
> app.use ('/managersignin',managersigninformRoutes);
> app.use('/salessignup',salessignupformRoutes);
> app.use ('/salessignin',salessigninformRoutes);
> app.use('/logout',logoutprofileformRoutes);
> app.use('/addproduct/uploads', express.static(path.join(__dirname, 'uploads')));
> //When a wrong path is accessed.
> app.get('*', (req, res) => {
> res.send('ERROR')
> })
>
> // Listening for requests: the server!
> app.listen(3000, () => {
> console.log(`Express running → PORT 3000`);
> });```