function _menu_tree_check_access
Same name and namespace in other branches
- 6.x drupal-6.x/includes/menu.inc \_menu_tree_check_access()
Sorts the menu tree and recursively checks access for each item.
Related topics
1 call to _menu_tree_check_access()
- menu_tree_check_access in drupal-7.x/
includes/ menu.inc - Checks access and performs dynamic operations for each link in the tree.
Archivo
- drupal-7.x/
includes/ menu.inc, line 1508 - API for the Drupal menu system.
Código
function _menu_tree_check_access(&$tree) {
$new_tree = array();
foreach ($tree as $key => $v) {
$item = &$tree[$key]['link'];
_menu_link_translate($item);
if ($item['access'] || ($item['in_active_trail'] && strpos($item['href'], '%') !== FALSE)) {
if ($tree[$key]['below']) {
_menu_tree_check_access($tree[$key]['below']);
}
// The weights are made a uniform 5 digits by adding 50000 as an offset.
// After _menu_link_translate(), $item['title'] has the localized link title.
// Adding the mlid to the end of the index insures that it is unique.
$new_tree[(50000 + $item['weight']) . ' ' . $item['title'] . ' ' . $item['mlid']] = $tree[$key];
}
}
// Sort siblings in the tree based on the weights and localized titles.
ksort($new_tree);
$tree = $new_tree;
}