function advanced_menu_core_access in Advanced Menu 6.x
Same name and namespace in other branches
- 7 core/advanced_menu_core.module \advanced_menu_core_access()
Implementation of hook_access().
1 call to advanced_menu_core_access()
- advanced_menu_menu_admin_form_alter in menu_admin/
advanced_menu_menu_admin.module - Implementation of hook_form_alter().
1 string reference to 'advanced_menu_core_access'
- advanced_menu_core_menu_alter in core/
advanced_menu_core.module - Implementation of hook_menu_alter().
File
- core/
advanced_menu_core.module, line 57 - Provides advanced menu permissioning.
Code
function advanced_menu_core_access() {
global $user;
$args = func_get_args();
$retVal = user_access($args[0]);
if (module_exists('advanced_menu_menu_admin')) {
$roleMenus = _advanced_menu_menu_admin_menus();
}
if (count($args) > 1) {
switch ($args[1]) {
case 'edit node':
case 'basic':
if (count($roleMenus) > 0 || user_access($args[0])) {
$retVal = TRUE;
}
break;
case 'admin':
$retVal = user_access($args[0]);
break;
case 'edit menu':
case 'edit item':
if (isset($roleMenus)) {
$retval = FALSE;
if (isset($roleMenus[$args[2]['menu_name']])) {
$retVal = TRUE;
}
}
break;
}
}
return $retVal;
}