Помогите пожалуйста! Пишу свой модуль, который будет представлять из себя личный кабинет. Добавил пункты меню (некоторые их которых должны отображаться только менеджеру) и натолкнулся на такую проблему:
Написал проверку
Но после этого пункт перестал отображаться менеджеру и обычному пользователю. Есть и роль и пользователь с названием manager.
И я так понемаю, из этого вытекает следующая ошибка, когда пытаюсь открыть страницу cabinet/offices, то получаю "Доступ заприщен", хотя прописал вот так:
'title' => 'Офисы',
'page callback' => 'prime_cabinet_offices',
'access arguments' => array('manager'),
//'access callback' => TRUE,
'type' => MENU_CALLBACK,
);
Если включаю 'access callback' => TRUE, то страница стаёт доступна всем ролям.
Может нужно что то в правах доступа включить? Но это же мой собственный модуль и там о нем ни слова.
Комментарии
В access callback должно быть имя вашей функции, которую вы создадите. И в не аргументом будет попадать access arguments.
примерно
* Implements hook_menu().
*/
function first_module_menu() {
$items['first_module/custom'] = array(
'title' => 'Custom page',
'page callback' => 'first_module_custom',
'access arguments' => array('access content'),
);
return $items;
}
или
$items['first_module/custom/%node'] = array(
'title' => 'Custom page',
'page callback' => 'first_module_custom',
'page arguments' => array(2),
'access arguments' => array('administer site configuration'),
);
return $items;
}