TailwindTemplate::wrapMessages()   A
last analyzed

Complexity

Conditions 5
Paths 16

Size

Total Lines 8
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 6
CRAP Score 5

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 5
eloc 5
nc 16
nop 2
dl 0
loc 8
ccs 6
cts 6
cp 1
crap 5
rs 9.6111
c 1
b 0
f 0
1
<?php
2
3
namespace Tamtamchik\SimpleFlash\Templates;
4
5
use Tamtamchik\SimpleFlash\BaseTemplate;
6
use Tamtamchik\SimpleFlash\TemplateInterface;
7
8
/**
9
 * Class TailwindTemplate.
10
 * Uses custom Tailwind markdown for flash messages.
11
 */
12
class TailwindTemplate extends BaseTemplate implements TemplateInterface
13
{
14
    protected $prefix = '';
15
    protected $postfix = '<br />';
16
    protected $wrapper = '<div class="bg-%s-300 border border-%s-400 text-%s-800 px-4 py-3 mb-3 rounded relative shadow" role="alert"">%s</div>';
17
18
    /**
19
     * Override base function to suite Bootstrap 3 alert naming.
20
     *
21
     * @param string $messages - message text
22
     * @param string $type - message type: success, info, warning, error
23
     *
24
     * @return string
25
     */
26 3
    public function wrapMessages(string $messages, string $type): string
27
    {
28 3
        $type = ($type == 'success') ? 'green' : $type;
29 3
        $type = ($type == 'info') ? 'blue' : $type;
30 3
        $type = ($type == 'warning') ? 'yellow' : $type;
31 3
        $type = ($type == 'error') ? 'red' : $type;
32
33 3
        return sprintf($this->getWrapper(), $type, $type, $type, $messages);
34
    }
35
}
36