Skip to content
This repository was archived by the owner on Aug 30, 2021. It is now read-only.

Commit e3eafa6

Browse files
Wuntennmleanos
authored andcommitted
fix(users) Handle missing email - OAuth (#1501)
* fix(users) patch OAuth default email issue - Intentionally omits setting email in constructor to trigger defaults when creating user. Handles cases where email is not authorized/given by provider. Related to issue #1250
1 parent 89e8d13 commit e3eafa6

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

modules/users/server/controllers/users/users.authentication.server.controller.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,16 @@ exports.saveOAuthUserProfile = function (req, providerUserProfile, done) {
160160
lastName: providerUserProfile.lastName,
161161
username: availableUsername,
162162
displayName: providerUserProfile.displayName,
163-
email: providerUserProfile.email,
164163
profileImageURL: providerUserProfile.profileImageURL,
165164
provider: providerUserProfile.provider,
166165
providerData: providerUserProfile.providerData
167166
});
168167

168+
// Email intentionally added later to allow defaults (sparse settings) to be applid.
169+
// Handles case where no email is supplied.
170+
// See comment: https://github.com/meanjs/mean/pull/1495#issuecomment-246090193
171+
user.email = providerUserProfile.email;
172+
169173
// And save the user
170174
user.save(function (err) {
171175
return done(err, user, info);

0 commit comments

Comments
 (0)