Completed
Push — master ( aec546...27a395 )
by Filipe
04:35
created

FlashMessagesMethods::addErrorMessage()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
c 1
b 0
f 1
dl 0
loc 8
ccs 0
cts 8
cp 0
rs 9.4285
cc 1
eloc 5
nc 1
nop 1
crap 2
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
    public function getFlashMessages()
30
    {
31
        if (null == $this->flashMessages) {
32
            $this->setFlashMessages(new FlashMessages());
33
        }
34
        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
    public function setFlashMessages(FlashMessages $flashMessages)
45
    {
46
        $this->flashMessages = $flashMessages;
47
        return $this;
48
    }
49
50
    /**
51
     * Add an info flash message
52
     *
53
     * @param string $message
54
     * @return self
55
     */
56
    public function addInfoMessage($message)
57
    {
58
        $this->getFlashMessages()->set(
59
            FlashMessages::TYPE_INFO,
60
            $message
61
        );
62
        return $this;
63
    }
64
65
    /**
66
     * Add a warning flash message
67
     *
68
     * @param string $message
69
     * @return self
70
     */
71
    public function addWarningMessage($message)
72
    {
73
        $this->getFlashMessages()->set(
74
            FlashMessages::TYPE_WARNING,
75
            $message
76
        );
77
        return $this;
78
    }
79
80
    /**
81
     * Add an error flash message
82
     *
83
     * @param string $message
84
     * @return self
85
     */
86
    public function addErrorMessage($message)
87
    {
88
        $this->getFlashMessages()->set(
89
            FlashMessages::TYPE_ERROR,
90
            $message
91
        );
92
        return $this;
93
    }
94
95
    /**
96
     * Add a success flash message
97
     *
98
     * @param string $message
99
     * @return self
100
     */
101
    public function addSuccessMessage($message)
102
    {
103
        $this->getFlashMessages()->set(
104
            FlashMessages::TYPE_SUCCESS,
105
            $message
106
        );
107
        return $this;
108
    }
109
110
    /**
111
     * Sets a flash message to be displayed
112
     *
113
     * @param int $type
114
     * @param string $message
115
     *
116
     * @return self
117
     */
118
    public function setMessage($type, $message)
119
    {
120
        $this->getFlashMessages()->set($type, $message);
121
        return $this;
122
    }
123
}