From d7e364d83153425e412032dd997e9c58cbc235eb Mon Sep 17 00:00:00 2001 From: Mateja Date: Fri, 7 May 2021 00:17:56 +0200 Subject: Using `passport.js` for login system. --- routes/web.js | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) (limited to 'routes') diff --git a/routes/web.js b/routes/web.js index 8960bb3..b6a85fe 100644 --- a/routes/web.js +++ b/routes/web.js @@ -1,19 +1,28 @@ const express = require('express'); +const passport = require('passport'); const router = express.Router(); + const postController = require('../controllers/post'); const userController = require('../controllers/user'); +const isAuth = (req, res, next) => { + if (req.isAuthenticated()) next(); + else res.redirect('/login'); +}; + router.get('/', postController.index); -router.get('/new-post', postController.create); -router.post('/new-post', postController.store); -router.get('/remove-post/:id', postController.destroy); +router.get('/new-post', isAuth, postController.create); +router.post('/new-post', isAuth, postController.store); +router.get('/remove-post/:id', isAuth, postController.destroy); router.get('/register', userController.registerView); router.get('/login', userController.loginView); router.post('/register', userController.register); -router.post('/login', userController.login); - +router.post('/login', passport.authenticate('local', { + failureRedirect: '/login', + successRedirect: '/new-post' +})); router.get('/logout', userController.logout); module.exports = router; -- cgit v1.2.3