From d5f0114cfbada972c1d6b1307c1c59b78fe3bd65 Mon Sep 17 00:00:00 2001 From: PrasadChinwal Date: Mon, 22 Jan 2024 14:19:26 -0600 Subject: [PATCH] Added logic to check if group key exists in response --- src/Oidc/ShibbolethOidcProvider.php | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/Oidc/ShibbolethOidcProvider.php b/src/Oidc/ShibbolethOidcProvider.php index d4a30b6..b5714aa 100644 --- a/src/Oidc/ShibbolethOidcProvider.php +++ b/src/Oidc/ShibbolethOidcProvider.php @@ -183,6 +183,11 @@ public function user() ->setApprovedScopes(explode($this->scopeSeparator, Arr::get($response, 'scope', ''))); } + /** + * Map Api response data to a User Object. + * @param array $user + * @return User + */ protected function mapUserToObject(array $user): User { return (new User)->setRaw($user)->map([ @@ -193,7 +198,7 @@ protected function mapUserToObject(array $user): User 'name' => $user['given_name'].' '.$user['family_name'], 'email' => $user['email'], 'password' => Hash::make($user['uisedu_uin'].now()), - 'groups' => $user['uisedu_is_member_of'], + 'groups' => array_key_exists('uisedu_is_member_of', $user) ? $user['uisedu_is_member_of']: [] ]); }