RecordWithState::toEnabled()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
dl 0
loc 5
ccs 0
cts 5
cp 0
rs 9.4285
c 0
b 0
f 0
cc 1
eloc 3
nc 1
nop 0
crap 2
1
<?php
2
3
/**
4
 * @copyright  Copyright (c) Flipbox Digital Limited
5
 * @license    https://github.com/flipbox/spark/blob/master/LICENSE
6
 * @link       https://github.com/flipbox/spark
7
 */
8
9
namespace flipbox\spark\records\traits;
10
11
use flipbox\spark\helpers\RecordHelper;
12
13
/**
14
 * @property bool $enabled
15
 *
16
 * @author Flipbox Factory <[email protected]>
17
 * @since 2.0.0
18
 */
19
trait RecordWithState
20
{
21
22
    /**
23
     * @inheritdoc
24
     */
25
    protected function stateRules()
26
    {
27
28
        return [
29
            [
30
                [
31
                    'enabled'
32
                ],
33
                'safe',
34
                'on' => [
35
                    RecordHelper::SCENARIO_DEFAULT
36
                ]
37
            ]
38
        ];
39
    }
40
41
    /**
42
     * @inheritdoc
43
     */
44
    public function isEnabled()
45
    {
46
        return (bool)$this->enabled;
47
    }
48
49
    /**
50
     * @inheritdoc
51
     */
52
    public function isDisabled()
53
    {
54
        return !$this->isEnabled();
55
    }
56
57
    /**
58
     * @inheritdoc
59
     */
60
    public function toEnabled()
61
    {
62
        $this->enabled = true;
63
        return $this;
64
    }
65
66
    /**
67
     * @inheritdoc
68
     */
69
    public function toDisabled()
70
    {
71
        $this->enabled = false;
72
        return $this;
73
    }
74
}
75