_menu_overview_tree_form
function _menu_overview_tree_form
_menu_overview_tree_form($tree)
Recursive helper function for menu_overview_form().
Parameters
$tree: The menu_tree retrieved by menu_tree_data.
File
- modules/menu/menu.admin.inc, line 92
- Administrative page callbacks for menu module.
Code
function _menu_overview_tree_form($tree) { $form = &drupal_static(__FUNCTION__, array('#tree' => TRUE)); foreach ($tree as $data) { $title = ''; $item = $data['link']; // Don't show callbacks; these have $item['hidden'] < 0. if ($item && $item['hidden'] >= 0) { $mlid = 'mlid:' . $item['mlid']; $form[$mlid]['#item'] = $item; $form[$mlid]['#attributes'] = $item['hidden'] ? array('class' => array('menu-disabled')) : array('class' => array('menu-enabled')); $form[$mlid]['title']['#markup'] = l($item['title'], $item['href'], $item['localized_options']); if ($item['hidden']) { $form[$mlid]['title']['#markup'] .= ' (' . t('disabled') . ')'; } elseif ($item['link_path'] == 'user' && $item['module'] == 'system') { $form[$mlid]['title']['#markup'] .= ' (' . t('logged in users only') . ')'; } $form[$mlid]['hidden'] = array( '#type' => 'checkbox', '#title' => t('Enable @title menu link', array('@title' => $item['title'])), '#title_display' => 'invisible', '#default_value' => !$item['hidden'], ); $form[$mlid]['weight'] = array( '#type' => 'weight', '#delta' => 50, '#default_value' => $item['weight'], '#title_display' => 'invisible', '#title' => t('Weight for @title', array('@title' => $item['title'])), ); $form[$mlid]['mlid'] = array( '#type' => 'hidden', '#value' => $item['mlid'], ); $form[$mlid]['plid'] = array( '#type' => 'hidden', '#default_value' => $item['plid'], ); // Build a list of operations. $operations = array(); $operations['edit'] = array('#type' => 'link', '#title' => t('edit'), '#href' => 'admin/structure/menu/item/' . $item['mlid'] . '/edit'); // Only items created by the menu module can be deleted. if ($item['module'] == 'menu' || $item['updated'] == 1) { $operations['delete'] = array('#type' => 'link', '#title' => t('delete'), '#href' => 'admin/structure/menu/item/' . $item['mlid'] . '/delete'); } // Set the reset column. elseif ($item['module'] == 'system' && $item['customized']) { $operations['reset'] = array('#type' => 'link', '#title' => t('reset'), '#href' => 'admin/structure/menu/item/' . $item['mlid'] . '/reset'); } $form[$mlid]['operations'] = $operations; } if ($data['below']) { _menu_overview_tree_form($data['below']); } } return $form; }
© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/modules!menu!menu.admin.inc/function/_menu_overview_tree_form/7.x