Skip to content

Commit a2bb0f6

Browse files
committed
Handle idp-specific token > user attributes
1 parent 46ccb40 commit a2bb0f6

File tree

1 file changed

+14
-3
lines changed

1 file changed

+14
-3
lines changed

app/src/services/user.js

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,20 @@ const service = {
2121
.filter(claims => claims) // Drop falsy values from array
2222
.concat(undefined)[0]; // Set undefined as last element of array
2323

24+
// handle inconsistencies between tokens
25+
const lastName = token.family_name !== '' ?
26+
token.family_name :
27+
token.display_name.split(' ').pop();
28+
const firstName = token.given_name !== token.display_name ?
29+
token.given_name :
30+
token.display_name.substring(0, token.display_name.lastIndexOf(' '));
31+
2432
return {
2533
identityId: identityId,
2634
username: token.identity_provider_identity ? token.identity_provider_identity : token.preferred_username,
27-
firstName: token.given_name,
28-
fullName: token.name,
29-
lastName: token.family_name,
35+
firstName: firstName,
36+
fullName: token.display_name,
37+
lastName: lastName,
3038
email: token.email,
3139
idp: token.identity_provider
3240
};
@@ -145,6 +153,9 @@ const service = {
145153
* @returns {Promise<object>} The result of running the login operation
146154
*/
147155
login: async (token) => {
156+
157+
console.log('a', token);
158+
148159
const newUser = service._tokenToUser(token);
149160
// wrap with db transaction
150161
return await utils.trxWrapper(async (trx) => {

0 commit comments

Comments
 (0)