drupal добавляет хук node_access к существующему модулю (OG)
Пожалуйста, не спрашивайте, зачем мне это или почему я такой извращенец.
У меня есть модуль Organic Groups на drupal 6. Мне нужно по какой-то причине добавить ловушку node_access в этот модуль.
В файле "og.module" или в любом файле, подключенном к этому модулю, нет предустановленной ловушки node_access (я проверял это). Я попытался добавить функцию "og_node_access" со следующим телом: "echo '1111111';return true;" и это нигде не срабатывает (вообще никакого эха). Я пытался добавить его в файл og.module.
PS: Пожалуйста, не рекомендуйте никаких расширений доступа для OG - я перепробовал множество из них. Все, что мне нужно, это:(псевдокод)
if ($op=='view'){
if ($node->type == 'xxxx' || $node->type =='yyyyyyyy') {
SHOW THIS TYPE OF NODES ONLY TO ADMIN(S) OF THE GROUP (OR SITE) AND THE AUTHOR OF THE NODE, NOBODY ELSE (EVEN IN THE SAME GROUP) IS ALLOWED TO SEE IT OR TOUCH IT.
} else {
USE DEFAULT RULES (return IGNORE);
}
}
И мне нужно, чтобы он был жестко закодирован, потому что доступ к таксономии, доступ к контенту и другие модули "Acess" не работают должным образом (на самом деле они вообще не работают) с модулем OG.
PPS: Я знаю, что OG - это что-то вроде дерьма, и есть несколько альтернатив, но мне просто нужно, чтобы это было сделано описанным способом.
1 ответ
Итак... Хук node_grants (я набрал опечатку в своем комментарии, это "node_grants", а не "access_grants") решил мою проблему. К сожалению, я потратил слишком много времени (целый день) на поиски и пытаясь понять немного сложную систему грантов друпала. В любом случае спасибо (всем) за ваш ответ(ы).