WhatGroupsAreListed   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 18
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
eloc 11
c 1
b 0
f 0
dl 0
loc 18
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A getCalculatedAnswer() 0 16 3
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