const express = require('express');
const mongoose = require('mongoose')
const app = require('../app');
const passport = require('passport');
const User = require('../models/Users')
const bcrypt = require('bcrypt')
const router = express.Router();
/* GET home page. */
router.get('/', checkAuth, (req, res) => {
res.redirect('dashboard', {
name: req.body.name
});
});
/* Login page GET */
router.get('/login', checkNotAuth, (req, res) => {
res.render('login')
})
/* Login page POST */
router.post('/login', checkNotAuth, passport.authenticate('local', {
successRedirect: '/',
failureRedirect: '/login',
failureFlash: true
}))
/* Registration page GET */
router.get('/register', checkNotAuth, (req, res) => {
res.render('register')
})
/* Registration page */
router.post('/register', async (req, res) => {
try {
const hashedPassword = await bcrypt.hash(req.body.password, 10);
let user = new User({
name: req.body.name,
email: req.body.email,
password: hashedPassword
})
user.save(user);
res.redirect('/login')
} catch (err) {
res.redirect('/register')
}
})
router.delete('/logout', (req, res) => {
req.logOut();
res.redirect('/login')
})
function checkAuth(req, res, next, e) {
if (req.isAuthenticated()) {
console.log(e)
return next();
}
return res.redirect('/login')
}
function checkNotAuth(req, res, next) {
if (req.isAuthenticated()) {
return res.redirect('/');
}
return next();
}
module.exports = router;
Witam, to znowu ja i teraz mam pytanko takie czemu nie mogę się zalogować ?
Rejestracja już działa tylko nie wiem czemu mnie "odbija" po zalogowaniu :/