У меня есть тип узла, который должен редактироваться пользователями только при определенных обстоятельствах, выходящих за рамки прав, которые имеет их роль. Я делаю это в пользовательском модуле.
Я бы хотел убрать возможность даже видеть вкладку редактирования, а не просто добавить функцию проверки в форму, которая будет предупреждать пользователя после отправки формы.
Мне нужно добавить какую-то функцию доступа. Кто-нибудь знает, как это сделать?
Заранее спасибо.
- Обновление -
Теперь у меня есть 2 способа, которые должны работать.
1) Использование hook_nodeapi:
function mymodule_nodeapi(&$node, $op, $a3 = NULL, $a4 = NULL) {
switch($op) {
case 'prepare':
if(!mymodule_access_function($node)) {
$_REQUEST['destination'] = 'my_access_denied_page';
// rest of function
2) Я могу вставить функцию обратного вызова доступа в пункт меню, используя hook_menu_alter.
Для моих целей 2 имеет больше смысла. Я думал, что изложу код для (1), хотя, поскольку это был ответ, приведенный на этой странице, и он работает.