function _menu_admin_per_menu_get_perm_menus in Menu Admin per Menu 7
Returns the menus for which a user has per menu admin permissions.
5 calls to _menu_admin_per_menu_get_perm_menus()
- _menu_admin_per_menu_access in ./
menu_admin_per_menu.module - Access callback for the overview page of all the menus.
- _menu_admin_per_menu_filter_parent_options in ./
menu_admin_per_menu.module - Filters parent options based on allowed menus.
- _menu_admin_per_menu_menu_access in ./
menu_admin_per_menu.module - Access callback for the overview and add menu link pages of a menu.
- _menu_admin_per_menu_menu_link_access in ./
menu_admin_per_menu.module - Access callback for the menu link administration pages.
- _menu_admin_per_menu_menu_overview_page in ./
menu_admin_per_menu.module - Overrides menu_overview_page().
File
- ./
menu_admin_per_menu.module, line 144 - Written by Henri MEDOT <henri.medot[AT]absyx[DOT]fr> http://www.absyx.fr
Code
function _menu_admin_per_menu_get_perm_menus($account = NULL) {
$perm_menus =& drupal_static(__FUNCTION__, array());
if (!isset($account)) {
$account = $GLOBALS['user'];
}
if (!isset($perm_menus[$account->uid])) {
$perm_menus[$account->uid] = array();
$menus = menu_get_menus();
foreach ($menus as $name => $title) {
if (user_access('administer ' . $name . ' menu items', $account)) {
$perm_menus[$account->uid][$name] = $name;
}
}
drupal_alter('menu_admin_per_menu_perm_menus', $perm_menus[$account->uid], $account);
}
return $perm_menus[$account->uid];
}