Skip to content

Instantly share code, notes, and snippets.

@deanshub
Forked from beshur/route.js
Created August 25, 2014 12:38
Show Gist options
  • Save deanshub/45ef5a1ac1e469281524 to your computer and use it in GitHub Desktop.
Save deanshub/45ef5a1ac1e469281524 to your computer and use it in GitHub Desktop.
app.post('/login', function(req, res) {
console.log(res);
passport.authenticate('local', function(err, user, params) {
if (req.xhr) {
//thanks @jkevinburton
if (err) { return res.json({ error: err.message }); }
// e.g. in auth.js:
// if (!user.emailVerified) { return done(null, false, { message: 'Email is not verified. Please check your email for the link.' }); }
if (!user && params) { return res.json({error : params.error}); }
if (!user) { return res.json({error : "Invalid Login"}); }
req.login(user, {}, function(err) {
if (err) { return res.json({error:err}); }
return res.json(
{ user: {
id: req.user.id,
email: req.user.email,
joined: req.user.joined
},
success: true
});
});
} else {
if (err) { return res.redirect('/login'); }
if (!user) { return res.redirect('/login'); }
req.login(user, {}, function(err) {
if (err) { return res.redirect('/login'); }
return res.redirect('/');
});
}
})(req, res);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment