PermissionsTableSeeder   A
last analyzed

Complexity

Total Complexity 2

Size/Duplication

Total Lines 67
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 1

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 1
dl 0
loc 67
ccs 0
cts 45
cp 0
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A run() 0 15 1
B getMediasPermissions() 0 30 1
1
<?php namespace Arcanesoft\Media\Seeds;
2
3
use Arcanesoft\Auth\Seeds\PermissionsSeeder;
4
use Arcanesoft\Media\Policies\MediasPolicy;
5
6
/**
7
 * Class     PermissionsTableSeeder
8
 *
9
 * @package  Arcanesoft\Media\Seeds
10
 * @author   ARCANEDEV <[email protected]>
11
 */
12
class PermissionsTableSeeder extends PermissionsSeeder
13
{
14
    /* -----------------------------------------------------------------
15
     |  Main Methods
16
     | -----------------------------------------------------------------
17
     */
18
19
    /**
20
     * Run the database seeds.
21
     */
22
    public function run()
23
    {
24
        $this->seed([
25
            [
26
                'group'       => [
27
                    'name'        => 'Media',
28
                    'slug'        => 'media',
29
                    'description' => 'Media permissions group',
30
                ],
31
                'permissions' => array_merge(
32
                    $this->getMediasPermissions()
33
                ),
34
            ],
35
        ]);
36
    }
37
38
    /* -----------------------------------------------------------------
39
     |  Permissions
40
     | -----------------------------------------------------------------
41
     */
42
43
    /**
44
     * Get the Medias permissions.
45
     *
46
     * @return array
47
     */
48
    private function getMediasPermissions()
49
    {
50
        return [
51
            [
52
                'name'        => 'Medias - List all medias',
53
                'description' => 'Allow to list all the medias.',
54
                'slug'        => MediasPolicy::PERMISSION_LIST,
55
            ],
56
            [
57
                'name'        => 'Medias - View a media',
58
                'description' => 'Allow to display a media.',
59
                'slug'        => MediasPolicy::PERMISSION_SHOW,
60
            ],
61
            [
62
                'name'        => 'Medias - Download a media',
63
                'description' => 'Allow to download a media.',
64
                'slug'        => MediasPolicy::PERMISSION_CREATE,
65
            ],
66
            [
67
                'name'        => 'Medias - Update a media',
68
                'description' => 'Allow to update a media.',
69
                'slug'        => MediasPolicy::PERMISSION_UPDATE,
70
            ],
71
            [
72
                'name'        => 'Medias - Delete a media',
73
                'description' => 'Allow to delete a media.',
74
                'slug'        => MediasPolicy::PERMISSION_DELETE,
75
            ],
76
        ];
77
    }
78
}
79