You are here

function _advanced_menu_menu_admin_menus in Advanced Menu 7

Same name and namespace in other branches
  1. 6.x menu_admin/advanced_menu_menu_admin.module \_advanced_menu_menu_admin_menus()

Helper function to determine menus the current user can edit.

4 calls to _advanced_menu_menu_admin_menus()
advanced_menu_core_access in core/advanced_menu_core.module
Implementation of hook_access().
advanced_menu_menu_admin_form_alter in menu_admin/advanced_menu_menu_admin.module
Implementation of hook_form_alter().
advanced_menu_menu_admin_form_node_form_alter in menu_admin/advanced_menu_menu_admin.module
Implements hook_form_BASE_FORM_ID_alter().
_advanced_menu_submenu_menus in submenu/advanced_menu_submenu.module
Helper function to determine what menus can be linked to from a given menu.

File

menu_admin/advanced_menu_menu_admin.module, line 80
Provides advanced menu permissioning.

Code

function _advanced_menu_menu_admin_menus($menus = array()) {
  global $user;
  $roleMenus = array();
  $role_select = db_select('advanced_menu_menu_admin_roles', 'r')
    ->fields('r', array(
    'menu_name',
  ))
    ->fields('c', array(
    'title',
  ));
  $role_ids = array();
  foreach ($user->roles as $key => $value) {
    $role_ids[] = $key;
  }
  $role_select
    ->condition('rid', $role_ids, 'IN');
  $role_select
    ->join('menu_custom', 'c', 'r.menu_name = c.menu_name');
  $role_result = $role_select
    ->execute();
  foreach ($role_result as $role_menu) {
    $roleMenus[$role_menu->menu_name] = $role_menu->title;
  }
  if ($user->uid == 1) {
    $roleMenus = menu_get_menus();
  }
  return $roleMenus;
}