1
0
Fork 0
mirror of synced 2024-06-28 19:20:25 +12:00

Set email & name after OAuth if they're empty

The logic before was incorrect. Really, email and name should only be
set if they're empty.
This commit is contained in:
Steven Nguyen 2023-06-22 17:46:09 -07:00
parent 18544428a0
commit 37ad61933c
No known key found for this signature in database

View file

@ -566,13 +566,12 @@ App::get('/v1/account/sessions/oauth2/:provider/redirect')
'countryCode' => ($record) ? \strtolower($record['country']['iso_code']) : '--',
], $detector->getOS(), $detector->getClient(), $detector->getDevice()));
$isAnonymousUser = Auth::isAnonymousUser($user);
if (empty($user->getAttribute('email'))) {
$user->setAttribute('email', $oauth2->getUserEmail($accessToken));
}
if ($isAnonymousUser) {
$user
->setAttribute('name', $oauth2->getUserName($accessToken))
->setAttribute('email', $oauth2->getUserEmail($accessToken))
;
if (empty($user->getAttribute('name'))) {
$user->setAttribute('name', $oauth2->getUserName($accessToken));
}
$user