diff --git a/application/common/models/User.php b/application/common/models/User.php index 27e63ea8..f14043e0 100644 --- a/application/common/models/User.php +++ b/application/common/models/User.php @@ -569,21 +569,7 @@ public function fields(): array }, 'hide', 'member' => function (self $model) { - if (!empty($model->groups)) { - $member = explode(',', $model->groups); - } else { - $member = []; - } - - $externalGroups = explode(',', $model->groups_external); - foreach ($externalGroups as $externalGroup) { - if (!empty($externalGroup)) { - $member[] = $externalGroup; - } - } - - $member[] = \Yii::$app->params['idpName']; - return $member; + return $model->getMemberList(); }, 'mfa', 'method' => function (self $model) { @@ -615,6 +601,26 @@ public function getDisplayName() return $this->display_name ?? "$this->first_name $this->last_name"; } + /** @return string[] */ + public function getMemberList(): array + { + if (!empty($this->groups)) { + $member = explode(',', $this->groups); + } else { + $member = []; + } + + $externalGroups = explode(',', $this->groups_external); + foreach ($externalGroups as $externalGroup) { + if (!empty($externalGroup)) { + $member[] = $externalGroup; + } + } + + $member[] = \Yii::$app->params['idpName']; + return $member; + } + /** * Based on current time and presence of MFA and Method options, * determine which "nag" to present to the user.