function menu_item_visibility_preprocess_menu in Menu Item Visibility 8
Implements hook_preprocess_menu().
File
- ./
menu_item_visibility.module, line 86 - Allows restricting access to menu items and menu path per role.
Code
function menu_item_visibility_preprocess_menu(&$variables) {
$items = $variables['items'];
$accessible_items = array();
foreach ($items as $key => &$item) {
// Enable recursive parsing.
if (!empty($item['below'])) {
$below = [
'items' => $item['below'],
];
menu_item_visibility_preprocess_menu($below);
$item['below'] = $below['items'];
}
$user_role_visibility = menu_item_visibility_check($key);
if (!$user_role_visibility) {
continue;
}
else {
$accessible_items[$key] = $item;
}
}
$variables['items'] = $accessible_items;
}