3 defined('_JEXEC') or die;
5 require_once dirname(__FILE__) . str_replace('/', DIRECTORY_SEPARATOR, '/../../functions.php');
7 // Note. It is important to remove spaces between elements.
9 $tag = ($params->get('tag_id') != NULL) ? ' id="' . $params->get('tag_id') . '"' : '';
10 if (isset($attribs['name']) && $attribs['name'] == 'user3') {
11 $menutype = 'horizontal';
13 $start = $params->get('startLevel');
15 // render subitems or not.
16 $subitems = $GLOBALS['artx_settings']['menu']['show_submenus'] && 1 == $params->get('showAllChildren');
17 // true - skip current node, false - render current node.
21 echo '<ul class="art-hmenu"' . $tag . '>';
22 foreach ($list as $i => & $item) {
24 if ($item->shallower) {
25 if (($item->level - $item->level_diff) <= $limit) {
26 echo '</li>' . str_repeat('</ul></li>', $limit - $item->level + $item->level_diff);
32 $id = ($item->id == $active_id) ? ' id="current"' : '';
33 $class = ' class="' . (in_array($item->id, $path) ? 'active ' : '') . 'item' . $item->id . '"';
34 echo '<li' . $id . $class . '>';
35 // Render the menu item.
36 switch ($item->type) {
40 require JModuleHelper::getLayoutPath('mod_menu', 'default_' . $item->type);
43 require JModuleHelper::getLayoutPath('mod_menu', 'default_url');
48 $limit = $item->level;
54 elseif ($item->shallower)
55 echo '</li>' . str_repeat('</ul></li>', $item->level_diff);
61 } else if (0 === strpos($params->get('moduleclass_sfx'), 'art-vmenu') || false !== strpos($params->get('moduleclass_sfx'), ' art-vmenu')) {
62 $menutype = 'vertical';
64 $start = $params->get('startLevel');
66 // render subitems or not.
67 $subitems = $GLOBALS['artx_settings']['vmenu']['show_submenus'] && 1 == $params->get('showAllChildren');
68 // true - all items expanded, false - only active items expanded.
69 $simple = $GLOBALS['artx_settings']['vmenu']['simple'];
70 // true - skip current node, false - render current node.
72 // limit of rendering - skip items with level more then limit.
76 echo '<ul class="art-vmenu"' . $tag . '>';
77 foreach ($list as $i => & $item) {
79 if ($item->shallower) {
80 if (($item->level - $item->level_diff) <= $limit) {
81 echo '</li>' . str_repeat('</ul></li>', $limit - $item->level + $item->level_diff);
87 $id = ($item->id == $active_id) ? ' id="current"' : '';
88 $class = ' class="' . (in_array($item->id, $path) ? 'active ' : '') . 'item' . $item->id . '"';
89 echo '<li' . $id . $class . '>';
90 // Render the menu item.
91 switch ($item->type) {
95 require JModuleHelper::getLayoutPath('mod_menu', 'default_' . $item->type);
98 require JModuleHelper::getLayoutPath('mod_menu', 'default_url');
102 if (!$subitems || (!$simple && !in_array($item->id, $path) && 'separator' != $item->type)) {
103 $limit = $item->level;
107 echo '<ul ' . (($subitems && !$simple && 'separator' == $item->type && !in_array($item->id, $path))
108 ? 'class="collapsed"' : '') . '>';
110 elseif ($item->shallower)
111 echo '</li>' . str_repeat('</ul></li>', $item->level_diff);
118 $menutype = 'default';
119 echo '<ul class="menu' . $params->get('class_sfx') . '"' . $tag . '>';
120 foreach ($list as $i => &$item) {
122 if ($item->id == $active_id)
123 $id = ' id="current"';
125 if (in_array($item->id, $path))
130 $class = ' class="' . $class . 'item' . $item->id . '"';
132 echo '<li' . $id . $class . '>';
134 // Render the menu item.
135 switch ($item->type) {
139 require JModuleHelper::getLayoutPath('mod_menu', 'default_'.$item->type);
142 require JModuleHelper::getLayoutPath('mod_menu', 'default_url');
148 elseif ($item->shallower)
149 echo '</li>' . str_repeat('</ul></li>', $item->level_diff);