You are here

function hook_menu_admin_per_menu_get_permissions_alter in Menu Admin per Menu 8

Alter the menus for which a user has per menu admin permissions.

Parameters

array $perm_menus: The $perm_menus array returned by getPerMenuPermissions() for a user account. Values in array are menu machine names and keys are permission name for appropriate menu.

\Drupal\Core\Session\AccountInterface $account: The user account object.

See also

\Drupal\menu_admin_per_menu\MenuAdminPerMenuAccessInterface::getPerMenuPermissions()

1 function implements hook_menu_admin_per_menu_get_permissions_alter()

Note: this list is generated by pattern matching, so it may include some functions that are not actually implementations of this hook.

menu_admin_per_menu_test_menu_admin_per_menu_get_permissions_alter in tests/modules/menu_admin_per_menu_test/menu_admin_per_menu_test.module
Implements hook_menu_admin_per_menu_get_permissions_alter().
1 invocation of hook_menu_admin_per_menu_get_permissions_alter()
MenuAdminPerMenuAccess::getPerMenuPermissions in src/Access/MenuAdminPerMenuAccess.php
Return array of all specific menu permissions.

File

./menu_admin_per_menu.api.php, line 28
Hooks provided by the Menu Admin per Menu module.

Code

function hook_menu_admin_per_menu_get_permissions_alter(array &$perm_menus, AccountInterface $account) {

  // Our sample module never allows certain roles to edit or delete
  // content. Since some other node access modules might allow this
  // permission, we expressly remove it by returning an empty $grants
  // array for roles specified in our variable setting.
  if ($account
    ->id()) {
    $perm_menus['administer custom-menu menu items'] = 'custom-menu';
  }
}