diff options
Diffstat (limited to 'routes/user.js')
| -rw-r--r-- | routes/user.js | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/routes/user.js b/routes/user.js index ac7d761..840930a 100644 --- a/routes/user.js +++ b/routes/user.js @@ -7,7 +7,7 @@ var csrfProtection = csrf(); router.use(csrfProtection); // router is protected -router.get('/logout', function (req, res, next) { +router.get('/logout', loggedIn, function (req, res, next) { req.logout(); res.redirect('/'); }); @@ -17,12 +17,12 @@ router.get('/user_profile', loggedIn, function(req, res, next) { res.render('user_profile_alt'); }); -router.get('/signup', function(req, res, next) { +router.get('/signup', loggedOut, function(req, res, next) { res.render('signup', {csrfToken: req.csrfToken(), success: req.session.success, errors: req.session.errors}); req.session.errors = null; }); -router.get('/signup/failed', function(req, res, next) { +router.get('/signup/failed', loggedOut, function(req, res, next) { var msg = req.flash('error'); res.render('signup', {csrfToken: req.csrfToken(), @@ -31,8 +31,7 @@ router.get('/signup/failed', function(req, res, next) { flashMsg: msg}); }); - -router.get('/signin', function (req, res, next) { +router.get('/signin', loggedOut, function (req, res, next) { var msg = req.flash('error'); res.render('signin', { csrfToken: req.csrfToken(), @@ -42,7 +41,6 @@ router.get('/signin', function (req, res, next) { }); }); - router.post('/signup', loggedOut, function(req, res, next) { req.check('fname', 'Please enter a valid first name.').notEmpty().withMessage('First name required.').isAlpha(); req.check('lname', 'Please enter a valid first name.').notEmpty().withMessage('Last name required.').isAlpha(); @@ -51,14 +49,16 @@ router.post('/signup', loggedOut, function(req, res, next) { req.check('password', "Password should be between 6 and 12 characters.") .notEmpty().withMessage('Password required').isLength({min: 6, max: 12}); req.check('password', "The confirmation password doesn't match.").equals(req.body.confirmPassword); - req.check('phone_num', 'Please enter a valid phone number').isMobilePhone('en-CA').optional(); + if (req.body.phone_num){ + req.check('phone_num', 'Please enter a valid phone number').isMobilePhone('en-CA'); + } // password has to be at least 4 characters long var errors = req.validationErrors(); if (errors) { req.session.errors = errors; req.session.success = false; - res.redirect('/signup'); + res.redirect('/user/signup'); } else { console.log("GOT SUCCESS"); passport.authenticate('local_signup', { @@ -91,13 +91,11 @@ router.post('/signin', loggedOut, function(req, res, next) { })(req, res); } - //res.redirect('/signup'); }); module.exports = router; - function loggedIn(req, res, next) { if (req.isAuthenticated()) { return next(); @@ -105,7 +103,6 @@ function loggedIn(req, res, next) { res.redirect('/'); } - function loggedOut(req, res, next) { if (!req.isAuthenticated()) { return next(); |
