provide ability to create submenus

This commit is contained in:
Mario Vavti
2015-05-10 15:00:18 +02:00
parent 2114bfafca
commit 616338c17e
8 changed files with 47 additions and 11 deletions

View File

@@ -29,17 +29,33 @@ function menu_render($menu, $class='', $edit = false, $var = '') {
if(! $menu)
return '';
$uid = local_channel();
$menu_list = menu_list($uid);
foreach($menu_list as $menus) {
if($menus['menu_name'] != $menu['menu']['menu_name'])
$menu_names[] = $menus['menu_name'];
}
for($x = 0; $x < count($menu['items']); $x ++) {
if(in_array($menu['items'][$x]['mitem_link'], $menu_names)) {
$m = menu_fetch($menu['items'][$x]['mitem_link'],local_channel(), get_observer_hash());
$submenu = menu_render($m, 'dropdown-menu', $edit = false, $var = array('wrap' => 'none'));
$menu['items'][$x]['submenu'] = $submenu;
}
if($menu['items'][$x]['mitem_flags'] & MENU_ITEM_ZID)
$menu['items'][$x]['mitem_link'] = zid($menu['items'][$x]['mitem_link']);
if($menu['items'][$x]['mitem_flags'] & MENU_ITEM_NEWWIN)
$menu['items'][$x]['newwin'] = '1';
$menu['items'][$x]['mitem_desc'] = bbcode($menu['items'][$x]['mitem_desc']);
}
$wrap = (($var['wrap'] === 'none') ? false : true);
return replace_macros(get_markup_template('usermenu.tpl'),array(
$ret = replace_macros(get_markup_template('usermenu.tpl'),array(
'$menu' => $menu['menu'],
'$class' => $class,
'$edit' => (($edit) ? t("Edit") : ''),
@@ -47,6 +63,8 @@ function menu_render($menu, $class='', $edit = false, $var = '') {
'$items' => $menu['items'],
'$wrap' => $wrap
));
return $ret;
}