Completed
Push — master ( 392bd3...60208d )
by ARCANEDEV
04:52
created

PostStatus   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 0

Test Coverage

Coverage 0%

Importance

Changes 2
Bugs 0 Features 0
Metric Value
wmc 3
c 2
b 0
f 0
lcom 0
cbo 0
dl 0
loc 50
ccs 0
cts 17
cp 0
rs 10

3 Methods

Rating   Name   Duplication   Size   Complexity  
A keys() 0 7 1
A all() 0 6 1
A get() 0 4 1
1
<?php namespace Arcanesoft\Blog\Entities;
2
3
/**
4
 * Class     PostStatus
5
 *
6
 * @package  Arcanesoft\Blog\Entities
7
 * @author   ARCANEDEV <[email protected]>
8
 */
9
class PostStatus
10
{
11
    /* ------------------------------------------------------------------------------------------------
12
     |  Constants
13
     | ------------------------------------------------------------------------------------------------
14
     */
15
    const STATUS_DRAFT     = 'draft';
16
    const STATUS_PUBLISHED = 'published';
17
18
    /* ------------------------------------------------------------------------------------------------
19
     |  Main Functions
20
     | ------------------------------------------------------------------------------------------------
21
     */
22
    /**
23
     * Get all posts status keys.
24
     *
25
     * @return array
26
     */
27
    public static function keys()
28
    {
29
        return [
30
            self::STATUS_DRAFT,
31
            self::STATUS_PUBLISHED,
32
        ];
33
    }
34
35
    /**
36
     * Get all posts status
37
     *
38
     * @return array
39
     */
40
    public static function all()
41
    {
42
        return array_map(function ($status) {
43
            return trans("blog::posts.statuses.$status");
44
        }, array_combine(self::keys(), self::keys()));
45
    }
46
47
    /**
48
     * Get a post status.
49
     *
50
     * @param  string  $key
51
     *
52
     * @return null|string
53
     */
54
    public static function get($key)
55
    {
56
        return array_get(self::all(), $key);
57
    }
58
}
59