Skip to content

Commit 2fad04e

Browse files
recca0120faustbrian
authored andcommitted
Update Provider.php (#136)
custom user mapping
1 parent 48af2b0 commit 2fad04e

File tree

1 file changed

+25
-6
lines changed

1 file changed

+25
-6
lines changed

Provider.php

Lines changed: 25 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,18 @@ class Provider extends AbstractProvider implements ProviderInterface
2424
*/
2525
public static function additionalConfigKeys()
2626
{
27-
return ['host', 'authorize_uri', 'token_uri', 'userinfo_uri', 'userinfo_key'];
27+
return [
28+
'host',
29+
'authorize_uri',
30+
'token_uri',
31+
'userinfo_uri',
32+
'userinfo_key',
33+
'user_id',
34+
'user_nickname',
35+
'user_name',
36+
'user_email',
37+
'user_avatar',
38+
];
2839
}
2940

3041
/**
@@ -80,11 +91,11 @@ protected function mapUserToObject(array $user)
8091
$data = is_null($key) === true ? $user : Arr::get($user, $key, []);
8192

8293
return (new User())->setRaw($data)->map([
83-
'id' => Arr::get($data, 'id'),
84-
'nickname' => Arr::get($data, 'username'),
85-
'name' => Arr::get($data, 'name'),
86-
'email' => Arr::get($data, 'email'),
87-
'avatar' => Arr::get($user, 'avatar'),
94+
'id' => $this->getUserData($data, 'id'),
95+
'nickname' => $this->getUserData($data, 'nickname'),
96+
'name' => $this->getUserData($data, 'name'),
97+
'email' => $this->getUserData($data, 'email'),
98+
'avatar' => $this->getUserData($data, 'avatar'),
8899
]);
89100
}
90101

@@ -113,4 +124,12 @@ protected function getLaravelPassportUrl($type)
113124
'userinfo_uri' => 'api/user',
114125
], $type))), '/');
115126
}
127+
128+
/**
129+
* {@inheritdoc}
130+
*/
131+
protected function getUserData($user, $key)
132+
{
133+
return Arr::get($user, $this->getConfig('user_'.$key, $key));
134+
}
116135
}

0 commit comments

Comments
 (0)