WhatGroupsAreListed::getCalculatedAnswer()   A
last analyzed

Complexity

Conditions 3
Paths 3

Size

Total Lines 16
Code Lines 10

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 10
c 1
b 0
f 0
dl 0
loc 16
rs 9.9332
cc 3
nc 3
nop 0
1
<?php
2
3
namespace Sunnysideup\HealthCheckProvider\Checks\Security;
4
5
use SilverStripe\Security\Group;
6
use Sunnysideup\HealthCheckProvider\Checks\HealthCheckItemRunner;
7
8
class WhatGroupsAreListed extends HealthCheckItemRunner
9
{
10
    public function getCalculatedAnswer(): array
11
    {
12
        $array = [];
13
        $groups = Group::get();
14
        foreach ($groups as $group) {
15
            $memberCount = $group->Members()->Count();
16
            if ($memberCount) {
17
                $array[$group->ID] = [
18
                    'ID' => $group->ID,
19
                    'Title' => $group->getTitle(),
20
                    'MemberCount' => $memberCount,
21
                ];
22
            }
23
        }
24
25
        return array_values($array);
26
    }
27
}
28