Make emails unique

Emails are made unique. When user attempts to sign in through a provider in which his email is one that is already registered, user is redirected to the signin page with an error passed as a query string parameter.
This commit is contained in:
Igor Freire
2015-02-28 19:09:12 -03:00
parent e1605b635b
commit 5d4d7cecfe
6 changed files with 17 additions and 10 deletions

View File

@@ -83,12 +83,15 @@ exports.signout = function (req, res) {
exports.oauthCallback = function (strategy) {
return function (req, res, next) {
passport.authenticate(strategy, function (err, user, redirectURL) {
if (err || !user) {
return res.redirect('/#!/signin');
if (err) {
return res.redirect('/authentication/signin?err=' + encodeURIComponent(errorHandler.getErrorMessage(err)));
}
if (!user) {
return res.redirect('/authentication/signin');
}
req.login(user, function (err) {
if (err) {
return res.redirect('/#!/signin');
return res.redirect('/authentication/signin');
}
return res.redirect(redirectURL || '/');