Code Duplication    Length = 27-30 lines in 2 locations

htdocs/xoops_lib/Xoops/Html/Menu/Render/BreadCrumb.php 1 location

@@ 53-79 (lines=27) @@
50
     *
51
     * @return string
52
     */
53
    protected function renderItem(Item $item) {
54
        $renderedItems = '';
55
        $type = $item->get('type', 'error');
56
        switch ($type) {
57
            case Item::TYPE_LINK;
58
                $anchorStart = '';
59
                $anchorEnd = '';
60
                $liClass = ' class="active"';
61
                if ($item->has('link')) {
62
                    $anchorStart = '<a href="' . $this->xoops->url($item->get('link')) . '">';
63
                    $anchorEnd = '</a>';
64
                    $liClass = '';
65
                }
66
                $caption = $item->get('caption', '');
67
                $icon = $item->has('icon') ? '<span class="' . $item->get('icon') . '" aria-hidden="true"></span> ' : '';
68
                $renderedItems .= "<li{$liClass}>{$anchorStart}{$icon}{$caption}{$anchorEnd}</li>";
69
                break;
70
            case Item::TYPE_LIST;
71
                foreach ($item['items'] as $listItem) {
72
                    $renderedItems .= $this->renderItem($listItem);
73
                }
74
                break;
75
            default;
76
                break;
77
        }
78
        return $renderedItems;
79
    }
80
}
81

htdocs/xoops_lib/Xoops/Html/Menu/Render/DropDownButton.php 1 location

@@ 68-97 (lines=30) @@
65
     *
66
     * @return string
67
     */
68
    protected function renderItem(Item $item) {
69
        $renderedItems = '';
70
        $type = $item->get('type', 'error');
71
        switch ($type) {
72
            case Item::TYPE_LINK;
73
                $anchorStart = '';
74
                $anchorEnd = '';
75
                $liClass = ' class="active"';
76
                if ($item->has('link')) {
77
                    $anchorStart = '<a href="' . $this->xoops->url($item->get('link')) . '">';
78
                    $anchorEnd = '</a>';
79
                    $liClass = '';
80
                }
81
                $caption = $item->get('caption', '');
82
                $icon = $item->has('icon') ? '<span class="' . $item->get('icon') . '" aria-hidden="true"></span> ' : '';
83
                $renderedItems .= "<li{$liClass}>{$anchorStart}{$icon}{$caption}{$anchorEnd}</li>";
84
                break;
85
            case Item::TYPE_LIST;
86
                foreach ($item['items'] as $listItem) {
87
                    $renderedItems .= $this->renderItem($listItem);
88
                }
89
                break;
90
            case Item::TYPE_DIVIDER:
91
                $renderedItems .= '<li role="separator" class="divider"></li>';
92
                break;
93
            default;
94
                break;
95
        }
96
        return $renderedItems;
97
    }
98
}
99
/*
100
<div class="dropdown">