Passed
Push — master ( 3d2565...6e288b )
by CodexShaper
04:16
created

DatabaseUserPerissionsSeeder   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 32
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 20
c 1
b 0
f 0
dl 0
loc 32
rs 10
wmc 1

1 Method

Rating   Name   Duplication   Size   Complexity  
A run() 0 25 1
1
<?php
2
3
use CodexShaper\DBM\Facades\Manager;
4
use Illuminate\Database\Seeder;
5
6
class DatabaseUserPerissionsSeeder extends Seeder
7
{
8
    /**
9
     * Run the database seeds.
10
     *
11
     * @return void
12
     */
13
    public function run()
14
    {
15
16
        $user_model        = config('dbm.user.model');
17
        $user_table        = config('dbm.user.table');
18
        $user_local_key    = config('dbm.user.local_key');
19
        $user_display_name = config('dbm.user.display_name');
0 ignored issues
show
Unused Code introduced by
The assignment to $user_display_name is dead and can be removed.
Loading history...
20
        $where             = config('dbm.user.where');
21
22
        $user = $user_model::where($where)->first();
23
24
        $localModel = Manager::model($user_model, $user_table)
25
            ->where($user_local_key, $user->{$user_local_key})
26
            ->first();
27
        $permissions = Manager::Permission()->all();
28
        Manager::Object()
29
            ->setManyToManyRelation(
30
                $localModel,
31
                Manager::Permission(),
32
                'dbm_user_permissions',
33
                'user_id',
34
                'dbm_permission_id'
35
            )
36
            ->belongs_to_many()
37
            ->sync($permissions);
38
    }
39
}
40