FlashMessagesMethods::addErrorMessage()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 1
crap 1
1
<?php
2
3
/**
4
 * This file is part of slick/mvc package
5
 *
6
 * For the full copyright and license information, please view the LICENSE
7
 * file that was distributed with this source code.
8
 */
9
10
namespace Slick\Mvc\Http;
11
12
/**
13
 * Flash Message Methods
14
 * 
15
 * @package Slick\Mvc\Http
16
 * @author  Filipe Silva <[email protected]>
17
 */
18
trait FlashMessagesMethods
19
{
20
21
    /**
22
     * @var FlashMessages
23
     */
24
    protected $flashMessages;
25
26
    /**
27
     * @return FlashMessages
28
     */
29 10
    public function getFlashMessages()
30
    {
31 10
        if (null == $this->flashMessages) {
32 2
            $this->setFlashMessages(new FlashMessages());
33 1
        }
34 10
        return $this->flashMessages;
35
    }
36
37
    /**
38
     * Set flash messages service
39
     *
40
     * @param FlashMessages $flashMessages
41
     *
42
     * @return FlashMessagesMethods
0 ignored issues
show
Comprehensibility Bug introduced by
The return type FlashMessagesMethods is a trait, and thus cannot be used for type-hinting in PHP. Maybe consider adding an interface and use that for type-hinting?

In PHP traits cannot be used for type-hinting as they do not define a well-defined structure. This is because any class that uses a trait can rename that trait’s methods.

If you would like to return an object that has a guaranteed set of methods, you could create a companion interface that lists these methods explicitly.

Loading history...
43
     */
44 10
    public function setFlashMessages(FlashMessages $flashMessages)
45
    {
46 10
        $this->flashMessages = $flashMessages;
47 10
        return $this;
48
    }
49
50
    /**
51
     * Add an info flash message
52
     *
53
     * @param string $message
54
     * @return self
55
     */
56 2
    public function addInfoMessage($message)
57
    {
58 2
        return $this->setMessage(FlashMessages::TYPE_INFO, $message);
59
    }
60
61
    /**
62
     * Add a warning flash message
63
     *
64
     * @param string $message
65
     * @return self
66
     */
67 2
    public function addWarningMessage($message)
68
    {
69 2
        return $this->setMessage(FlashMessages::TYPE_WARNING, $message);
70
    }
71
72
    /**
73
     * Add an error flash message
74
     *
75
     * @param string $message
76
     * @return self
77
     */
78 2
    public function addErrorMessage($message)
79
    {
80 2
        return $this->setMessage(FlashMessages::TYPE_ERROR, $message);
81
    }
82
83
    /**
84
     * Add a success flash message
85
     *
86
     * @param string $message
87
     * @return self
88
     */
89 2
    public function addSuccessMessage($message)
90
    {
91 2
        return $this->setMessage(FlashMessages::TYPE_SUCCESS, $message);
92
    }
93
94
    /**
95
     * Sets a flash message to be displayed
96
     *
97
     * @param int $type
98
     * @param string $message
99
     *
100
     * @return self
101
     */
102 8
    public function setMessage($type, $message)
103
    {
104 8
        $this->getFlashMessages()->set($type, $message);
105 8
        return $this;
106
    }
107
}