Status   A
last analyzed

Complexity

Total Complexity 4

Size/Duplication

Total Lines 45
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

Changes 4
Bugs 0 Features 0
Metric Value
wmc 4
c 4
b 0
f 0
lcom 1
cbo 0
dl 0
loc 45
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 9 1
A lists() 0 4 1
A get() 0 8 2
1
<?php namespace Modules\Blog\Entities;
2
3
/**
4
 * Class Status
5
 * @package Modules\Blog\Entities
6
 */
7
class Status
8
{
9
    const DRAFT = 0;
10
    const PENDING = 1;
11
    const PUBLISHED = 2;
12
    const UNPUBLISHED = 3;
13
14
    /**
15
     * @var array
16
     */
17
    private $statuses = [];
18
19
    public function __construct()
20
    {
21
        $this->statuses = [
22
            self::DRAFT => trans('blog::status.draft'),
23
            self::PENDING => trans('blog::status.pending review'),
24
            self::PUBLISHED => trans('blog::status.published'),
25
            self::UNPUBLISHED => trans('blog::status.unpublished'),
26
        ];
27
    }
28
29
    /**
30
     * Get the available statuses
31
     * @return array
32
     */
33
    public function lists()
34
    {
35
        return $this->statuses;
36
    }
37
38
    /**
39
     * Get the post status
40
     * @param int $statusId
41
     * @return string
42
     */
43
    public function get($statusId)
44
    {
45
        if (isset($this->statuses[$statusId])) {
46
            return $this->statuses[$statusId];
47
        }
48
49
        return $this->statuses[self::DRAFT];
50
    }
51
}
52