GroupRepository   A
last analyzed

Complexity

Total Complexity 9

Size/Duplication

Total Lines 47
Duplicated Lines 0 %

Importance

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

7 Methods

Rating   Name   Duplication   Size   Complexity  
A createGroup() 0 2 1
A destroyGroup() 0 3 1
A storeGroup() 0 3 1
A showGroup() 0 3 1
A updateGroup() 0 3 1
A indexGroup() 0 8 3
A editGroup() 0 3 1
1
<?php
2
3
namespace Adminetic\Contact\Repositories;
4
5
use Illuminate\Support\Facades\Cache;
6
use Adminetic\Contact\Models\Admin\Group;
7
use Adminetic\Contact\Http\Requests\GroupRequest;
8
use Adminetic\Contact\Contracts\GroupRepositoryInterface;
9
10
class GroupRepository implements GroupRepositoryInterface
11
{
12
    // Group Index
13
    public function indexGroup()
14
    {
15
        $groups = config('coderz.caching', true)
16
            ? (Cache::has('groups') ? Cache::get('groups') : Cache::rememberForever('groups', function () {
17
                return Group::latest()->get();
18
            }))
19
            : Group::latest()->get();
20
        return compact('groups');
21
    }
22
23
    // Group Create
24
    public function createGroup()
25
    {
26
        //
27
    }
28
29
    // Group Store
30
    public function storeGroup(GroupRequest $request)
31
    {
32
        Group::create($request->validated());
33
    }
34
35
    // Group Show
36
    public function showGroup(Group $group)
37
    {
38
        return compact('group');
39
    }
40
41
    // Group Edit
42
    public function editGroup(Group $group)
43
    {
44
        return compact('group');
45
    }
46
47
    // Group Update
48
    public function updateGroup(GroupRequest $request, Group $group)
49
    {
50
        $group->update($request->validated());
51
    }
52
53
    // Group Destroy
54
    public function destroyGroup(Group $group)
55
    {
56
        $group->delete();
57
    }
58
}
59