GitHub Access Token became invalid

It seems like the GitHub access token used for retrieving details about this repository from GitHub became invalid. This might prevent certain types of inspections from being run (in particular, everything related to pull requests).
Please ask an admin of your repository to re-new the access token on this website.

GroupController::show()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 1
c 0
b 0
f 0
dl 0
loc 3
ccs 2
cts 2
cp 1
rs 10
cc 1
nc 1
nop 1
crap 1
1
<?php
2
0 ignored issues
show
Coding Style introduced by
Missing file doc comment
Loading history...
3
namespace BristolSU\ControlDB\Http\Controllers\Group;
4
5
use BristolSU\ControlDB\Http\Controllers\Controller;
6
use BristolSU\ControlDB\Http\Requests\Api\Group\StoreGroupRequest;
7
use BristolSU\ControlDB\Contracts\Models\Group;
8
use BristolSU\ControlDB\Contracts\Repositories\DataGroup as DataGroupRepository;
9
use BristolSU\ControlDB\Contracts\Repositories\Group as GroupRepository;
10
use Illuminate\Http\Request;
11
use Illuminate\Pagination\LengthAwarePaginator;
12
use Illuminate\Support\Collection;
13
14
/**
15
 * Handles groups
16
 */
0 ignored issues
show
Coding Style introduced by
Missing @category tag in class comment
Loading history...
Coding Style introduced by
Missing @package tag in class comment
Loading history...
Coding Style introduced by
Missing @author tag in class comment
Loading history...
Coding Style introduced by
Missing @license tag in class comment
Loading history...
Coding Style introduced by
Missing @link tag in class comment
Loading history...
17
class GroupController extends Controller
18
{
19
20
    /**
21
     * Get all groups
22
     *
23
     * @param Request $request
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 9 spaces after parameter type; 1 found
Loading history...
24
     * @param GroupRepository $groupRepository
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
25
     * @return LengthAwarePaginator
0 ignored issues
show
Coding Style introduced by
Tag @return cannot be grouped with parameter tags in a doc comment
Loading history...
26
     */
27 2
    public function index(Request $request, GroupRepository $groupRepository)
0 ignored issues
show
Unused Code introduced by
The parameter $request is not used and could be removed. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-unused  annotation

27
    public function index(/** @scrutinizer ignore-unused */ Request $request, GroupRepository $groupRepository)

This check looks for parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
28
    {
29 2
        $perPage = request()->input('per_page', 10);
30 2
        $page = request()->input('page', 1);
31
        
32 2
        return $this->paginationResponse(
33 2
            $groupRepository->paginate($page, $perPage),
34 2
            $groupRepository->count()
35
        );
36
    }
37
38
    public function search(Request $request, GroupRepository $groupRepository, DataGroupRepository $dataGroupRepository)
0 ignored issues
show
Unused Code introduced by
The parameter $groupRepository is not used and could be removed. ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-unused  annotation

38
    public function search(Request $request, /** @scrutinizer ignore-unused */ GroupRepository $groupRepository, DataGroupRepository $dataGroupRepository)

This check looks for parameters that have been defined for a function or method, but which are not used in the method body.

Loading history...
Coding Style introduced by
Missing doc comment for function search()
Loading history...
39
    {
40
        $search = [];
41
        if($request->has('name')) {
0 ignored issues
show
Coding Style introduced by
Expected "if (...) {\n"; found "if(...) {\n"
Loading history...
42
            $search['name'] = $request->input('name');
43
        }
44
        if($request->has('email')) {
0 ignored issues
show
Coding Style introduced by
Expected "if (...) {\n"; found "if(...) {\n"
Loading history...
45
            $search['email'] = $request->input('email');
46
        }
47
        $dataGroups = $dataGroupRepository->getAllWhere($search);
48
        $groups = new Collection();
49
        foreach($dataGroups as $dataGroup) {
0 ignored issues
show
Coding Style introduced by
Expected "foreach (...) {\n"; found "foreach(...) {\n"
Loading history...
50
            $group = $dataGroup->group();
51
            if($group !== null) {
0 ignored issues
show
Coding Style introduced by
Expected "if (...) {\n"; found "if(...) {\n"
Loading history...
52
                $groups->push($group);
53
            }
54
        }
55
56
        return $this->paginate($groups);
57
    }
58
59
    /**
60
     * Get information about a specific group
61
     * 
62
     * @param Group $group
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
63
     * @return Group
0 ignored issues
show
Coding Style introduced by
Tag @return cannot be grouped with parameter tags in a doc comment
Loading history...
64
     */
65 1
    public function show(Group $group)
66
    {
67 1
        return $group;
68
    }
69
70
    /**
71
     * Create a group
72
     * 
73
     * Accepts the parameters name and email
74
     * 
75
     * @param StoreGroupRequest $request
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 3 spaces after parameter type; 1 found
Loading history...
76
     * @param GroupRepository $groupRepository
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 5 spaces after parameter type; 1 found
Loading history...
77
     * @param DataGroupRepository $dataGroupRepository
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
78
     * @return Group
0 ignored issues
show
Coding Style introduced by
Tag @return cannot be grouped with parameter tags in a doc comment
Loading history...
79
     */
80 2
    public function store(StoreGroupRequest $request, GroupRepository $groupRepository, DataGroupRepository $dataGroupRepository)
81
    {
82 2
        $dataGroup = $dataGroupRepository->create(
83 2
            $request->input('name'),
84 2
            $request->input('email')
85
        );
86
        
87 2
        foreach($dataGroup->getAdditionalAttributes() as $additionalAttribute) {
0 ignored issues
show
Coding Style introduced by
Expected "foreach (...) {\n"; found "foreach(...) {\n"
Loading history...
88 1
            if($request->has($additionalAttribute)) {
0 ignored issues
show
Coding Style introduced by
Expected "if (...) {\n"; found "if(...) {\n"
Loading history...
89 1
                $dataGroup->saveAdditionalAttribute($additionalAttribute, $request->input($additionalAttribute));
90
            }
91
        }
92
93 2
        return $groupRepository->create($dataGroup->id());
94
    }
95
96
    /**
0 ignored issues
show
Coding Style introduced by
Parameter $dataGroupRepository should have a doc-comment as per coding-style.
Loading history...
97
     * Update a group
98
     * 
99
     * Accepts name and/or email
100
     * @param Group $group
0 ignored issues
show
Coding Style introduced by
There must be exactly one blank line before the tags in a doc comment
Loading history...
Coding Style introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 13 spaces after parameter type; 1 found
Loading history...
101
     * @param StoreGroupRequest $request
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
102
     * @return Group
0 ignored issues
show
Coding Style introduced by
Tag @return cannot be grouped with parameter tags in a doc comment
Loading history...
103
     */
104 2
    public function update(Group $group, StoreGroupRequest $request, DataGroupRepository $dataGroupRepository)
105
    {
106 2
        $dataGroup = $group->data();
107 2
        $dataGroupRepository->update(
108 2
            $group->dataProviderId(),
109 2
            $request->input('name', $dataGroup->name()),
110 2
            $request->input('email', $dataGroup->email())
111
        );
112
        
113 2
        foreach($dataGroup->getAdditionalAttributes() as $additionalAttribute) {
0 ignored issues
show
Coding Style introduced by
Expected "foreach (...) {\n"; found "foreach(...) {\n"
Loading history...
114 1
            if($request->has($additionalAttribute)) {
0 ignored issues
show
Coding Style introduced by
Expected "if (...) {\n"; found "if(...) {\n"
Loading history...
115 1
                $dataGroup->saveAdditionalAttribute($additionalAttribute, $request->input($additionalAttribute));
116
            }
117
        }
118
        
119 2
        return $group;
120
    }
121
122
    /**
123
     * Delete a group
124
     * 
125
     * @param Group $group
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
Coding Style introduced by
Expected 11 spaces after parameter type; 1 found
Loading history...
126
     * @param GroupRepository $groupRepository
0 ignored issues
show
Coding Style introduced by
Missing parameter comment
Loading history...
127
     */
0 ignored issues
show
Coding Style introduced by
Missing @return tag in function comment
Loading history...
128 1
    public function destroy(Group $group, GroupRepository $groupRepository)
129
    {
130 1
        $groupRepository->delete((int) $group->id());
131 1
    }
132
133
}
134