RoleRepository::storeRole()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
3
namespace Pratiksh\Adminetic\Repositories;
4
5
use Illuminate\Support\Facades\Cache;
6
use Pratiksh\Adminetic\Contracts\RoleRepositoryInterface;
7
use Pratiksh\Adminetic\Http\Requests\RoleRequest;
8
use Pratiksh\Adminetic\Models\Admin\Role;
9
10
class RoleRepository implements RoleRepositoryInterface
11
{
12
    // Role Index
13
    public function indexRole()
14
    {
15
        $roles = config('adminetic.caching', true)
16
            ? (Cache::has('roles') ? Cache::get('roles') : Cache::rememberForever('roles', function () {
17
                return Role::all();
18
            }))
19
            : Role::all();
20
21
        return compact('roles');
22
    }
23
24
    // Role Create
25
    public function createRole()
26
    {
27
        //
28
    }
29
30
    // Role Store
31
    public function storeRole(RoleRequest $request)
32
    {
33
        Role::create($request->validated());
34
    }
35
36
    // Role Show
37
    public function showRole(Role $role)
38
    {
39
        return compact('role');
40
    }
41
42
    // Role Edit
43
    public function editRole(Role $role)
44
    {
45
        return compact('role');
46
    }
47
48
    // Role Update
49
    public function updateRole(RoleRequest $request, Role $role)
50
    {
51
        $role->update($request->validated());
52
    }
53
54
    // Role Destroy
55
    public function destroyRole(Role $role)
56
    {
57
        $role->delete();
58
    }
59
}
60