node_access_example_node_grants
developer/examples/node_access_example.module, строка 72
- Версии
- 5 – 6
node_access_example_node_grants($account, $op)
Реализация hook_node_grants()
.
Сообщает системе доступа к нодам, что идентификатор группы (Group ID, GID) пользователя принадлежит каждой области. В примере мы предоставляем две области: образец области, который имеет только одну группу идентификаторов, и идентификатор пользователя, который либо член группы, либо имеет доступ к операции.
Мы также создание области для автора ноды, чтобы дать ему специальные привилегии. Итого имеем один идентификатор группы для каждого идентификатора пользователя и каждый пользователя автоматически становится членом группы, где идентификатор группы равен идентификатору пользователя (GID == UID).
Код
<?php
function node_access_example_node_grants($account, $op) {
if ($op == 'view' && user_access('access private content', $account)) {
$grants['example'] = array(1);
}
if (($op == 'update' || $op == 'delete') && user_access('edit private content', $account)) {
$grants['example'] = array(1);
}
$grants['example_author'] = array($account->uid);
return $grants;
}
?>
Войдите или зарегистрируйтесь, чтобы получить возможность отправлять комментарии