Presenter::getChildMenuItems()   B
last analyzed

Complexity

Conditions 6
Paths 6

Size

Total Lines 21

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 42

Importance

Changes 0
Metric Value
dl 0
loc 21
ccs 0
cts 13
cp 0
rs 8.9617
c 0
b 0
f 0
cc 6
nc 6
nop 1
crap 42
1
<?php
2
3
namespace Nwidart\Menus\Presenters;
4
5
use Nwidart\Menus\MenuItem;
6
7
abstract class Presenter implements PresenterInterface
8
{
9
    /**
10
     * Get open tag wrapper.
11
     *
12
     * @return string
13
     */
14
    public function getOpenTagWrapper()
15
    {
16
    }
17
18
    /**
19
     * Get close tag wrapper.
20
     *
21
     * @return string
22
     */
23
    public function getCloseTagWrapper()
24
    {
25
    }
26
27
    /**
28
     * Get menu tag without dropdown wrapper.
29
     *
30
     * @param \Nwidart\Menus\MenuItem $item
31
     *
32
     * @return string
33
     */
34
    public function getMenuWithoutDropdownWrapper($item)
35
    {
36
    }
37
38
    /**
39
     * Get divider tag wrapper.
40
     *
41
     * @return string
42
     */
43
    public function getDividerWrapper()
44
    {
45
    }
46
47
    /**
48
     * Get header dropdown tag wrapper.
49
     *
50
     * @param \Nwidart\Menus\MenuItem $item
51
     *
52
     * @return string
53
     */
54
    public function getHeaderWrapper($item)
55
    {
56
    }
57
58
    /**
59
     * Get menu tag with dropdown wrapper.
60
     *
61
     * @param \Nwidart\Menus\MenuItem $item
62
     *
63
     * @return string
64
     */
65
    public function getMenuWithDropDownWrapper($item)
66
    {
67
    }
68
69
    /**
70
     * Get multi level dropdown menu wrapper.
71
     *
72
     * @param \Nwidart\Menus\MenuItem $item
73
     *
74
     * @return string
75
     */
76
    public function getMultiLevelDropdownWrapper($item)
77
    {
78
    }
79
80
    /**
81
     * Get child menu items.
82
     *
83
     * @param \Nwidart\Menus\MenuItem $item
84
     *
85
     * @return string
86
     */
87
    public function getChildMenuItems(MenuItem $item)
88
    {
89
        $results = '';
90
        foreach ($item->getChilds() as $child) {
91
            if ($child->hidden()) {
92
                continue;
93
            }
94
95
            if ($child->hasSubMenu()) {
96
                $results .= $this->getMultiLevelDropdownWrapper($child);
97
            } elseif ($child->isHeader()) {
98
                $results .= $this->getHeaderWrapper($child);
99
            } elseif ($child->isDivider()) {
100
                $results .= $this->getDividerWrapper();
101
            } else {
102
                $results .= $this->getMenuWithoutDropdownWrapper($child);
103
            }
104
        }
105
106
        return $results;
107
    }
108
}
109