Advertisement
Guest User

Untitled

a guest
Nov 16th, 2018
138
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var express = require('express');
  2. var User = require('../models/users');
  3. var mdwAuth = require('../middleware/auth');
  4. var router = express.Router();
  5. var sessionStore ;
  6.  
  7. router.get('/', mdwAuth.check_login, function(req, res, next) {
  8.   sessionStore = req.session;
  9.   if(sessionStore) {
  10.     res.render('index', { title: 'Fergusso mamen', sessionStore: sessionStore });
  11.   } else {
  12.     res.redirect('/login')
  13.   }
  14. });
  15.  
  16. router.get('/login', function(req, res, next) {
  17.   res.render('login');
  18. });
  19.  
  20. router.post('/login', function(req, res, next) {
  21.   sessionStore = req.session;
  22.   // empty field condition
  23.   if (req.body.email == "" || req.body.password == "") {
  24.     req.flash('info', 'Please, those fields can not be empty');
  25.     res.redirect('/login');
  26.   } else {
  27.   // execute login
  28.   // cari di collection data email dan password, jika ada maka simpan session : name, email, admin, logged_in
  29.     User.find({email: req.body.email, password:req.body.password},function(err, user) {
  30.       if(err) throw err;
  31.       if(user.length > 0) {
  32.         sessionStore.name = user[0].name;
  33.         sessionStore.email = user[0].email;
  34.         sessionStore.admin = user[0].admin;
  35.         sessionStore.logged_in = true;
  36.         res.redirect('/');
  37.       } else {
  38.         req.flash('info', 'Sepertinya akun Anda salah');
  39.         res.redirect('/login');
  40.       }
  41.     });
  42.   }                    
  43. });
  44.  
  45. router.get('/logout', function(req, res, next){
  46.   sessionStore = req.session;
  47.   if (sessionStore) {
  48.     // delete session object
  49.     sessionStore.destroy(function(err) {
  50.       if(err) {
  51.         next(err);
  52.       } else {
  53.         console.log('session has been destroyed');
  54.         res.redirect('/');
  55.       }
  56.     });
  57.   }
  58. });
  59.  
  60. router.get('/admin', mdwAuth.check_login, mdwAuth.is_admin, function(req, res, next) {
  61.   sessionStore = req.session;
  62.   if(sessionStore){
  63.     res.render('admin', { title: "admin page", sessionStore: sessionStore });
  64.   } else {
  65.     res.redirect('/login');
  66.   }
  67. });
  68.  
  69. router.get('/register', function(req, res, next) {
  70.   res.render('register', { title: "Register Page" });
  71. });
  72.  
  73. // ADD function
  74. router.post('/add', function(req, res, next) {
  75.   sessionStore = req.session;
  76.   // value dari name
  77.   var userName = req.body.newName;
  78.   var userEmail = req.body.newEmail;
  79.   var userPassword = req.body.newPassword;
  80.   // empty field condition
  81.   if (userName == "" || userEmail == "" || userPassword == "") {
  82.     req.flash('info', 'Please, those fields can not be empty');
  83.     res.redirect('/register');
  84.   } else {
  85.     User.find({email: userEmail}, function (err, user){
  86.       console.log("User "+user)
  87.       if (user.length == 0)
  88.       {
  89.         var member = new User({
  90.           name: userName,
  91.           email: userEmail,
  92.           password: userPassword,
  93.           admin: false,
  94.         });
  95.    
  96.         member.save(function(err) {
  97.           if (err) {
  98.             throw err;
  99.           } else {
  100.             res.redirect("/")
  101.           }
  102.         });
  103.       }
  104.     });
  105.   }
  106. });
  107.  
  108. module.exports = router;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement