Preference   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 40
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Importance

Changes 0
Metric Value
wmc 3
lcom 0
cbo 0
dl 0
loc 40
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getPreferenceOptionsArray() 0 11 2
A users() 0 4 1
1
<?php
2
3
namespace NukaCode\Users\Models\User;
4
5
class Preference extends \BaseModel
6
{
7
    protected $presenter = 'NukaCode\Users\Presenters\User\PreferencePresenter';
8
9
    protected $table = 'preferences';
10
11
    protected $fillable = [
12
        'name',
13
        'keyName',
14
        'description',
15
        'value',
16
        'default',
17
        'display',
18
        'hiddenFlag',
19
    ];
20
21
    protected $rules = [
22
        'name'    => 'required',
23
        'value'   => 'required',
24
        'default' => 'required',
25
        'display' => 'required',
26
    ];
27
28
    public function getPreferenceOptionsArray()
29
    {
30
        $preferenceOptions = explode('|', $this->value);
31
        $preferenceArray   = [];
32
33
        foreach ($preferenceOptions as $preferenceOption) {
34
            $preferenceArray[$preferenceOption] = ucwords($preferenceOption);
35
        }
36
37
        return $preferenceArray;
38
    }
39
40
    public function users()
41
    {
42
        return $this->belongsToMany('NukaCode\Users\Models\User', 'preference_users', 'user_id', 'preference_id');
43
    }
44
}