1 | <?php |
||
2 | |||
3 | namespace Sunnysideup\HealthCheckProvider\Checks\Security; |
||
4 | |||
5 | use SilverStripe\Security\Permission; |
||
6 | use Sunnysideup\HealthCheckProvider\Checks\HealthCheckItemRunner; |
||
7 | |||
8 | class WhoHasFullAccessRightsToSite extends HealthCheckItemRunner |
||
9 | { |
||
10 | private static $access_code = [ |
||
0 ignored issues
–
show
introduced
by
![]() |
|||
11 | 'ADMIN', |
||
12 | ]; |
||
13 | |||
14 | public function getCalculatedAnswer(): array |
||
15 | { |
||
16 | $array = []; |
||
17 | $groups = Permission::get_groups_by_permission($this->Config()->get('access_code')); |
||
18 | foreach ($groups as $group) { |
||
19 | if ($group->Members()->count()) { |
||
20 | $members = $group->Members(); |
||
21 | foreach ($members as $member) { |
||
22 | $array[$member->ID] = [ |
||
23 | 'ID' => $member->ID, |
||
24 | 'Name' => $member->getTitle(), |
||
25 | 'Email' => $member->Email, |
||
26 | ]; |
||
27 | } |
||
28 | } |
||
29 | } |
||
30 | |||
31 | return array_values($array); |
||
32 | } |
||
33 | } |
||
34 |