function nodeaccess_userreference_node_access_explain in Node access user reference 7.3
Same name and namespace in other branches
- 6.3 nodeaccess_userreference.module \nodeaccess_userreference_node_access_explain()
- 6.2 nodeaccess_userreference.module \nodeaccess_userreference_node_access_explain()
- 7.2 nodeaccess_userreference.module \nodeaccess_userreference_node_access_explain()
Implements hook_node_access_explain().
This gives the Devel module nice information to display when debugging node grants.
File
- ./
nodeaccess_userreference.module, line 587 - The Node access user reference module.
Code
function nodeaccess_userreference_node_access_explain($row) {
if (in_array($row->realm, array(
'nodeaccess_userreference',
'nodeaccess_userreference_author',
'nodeaccess_userreference_all',
))) {
$ops = array();
foreach (array(
'view',
'update',
'delete',
) as $op) {
$gop = 'grant_' . $op;
if (!empty($row->{$gop})) {
$ops[] = $op;
}
}
if (!empty($ops)) {
$do = implode('/', $ops);
switch ($row->realm) {
case 'nodeaccess_userreference':
$account = user_load($row->gid);
return t('Referenced user %name may !do this node', array(
'%name' => $account->name,
'!do' => $do,
));
case 'nodeaccess_userreference_author':
$account = user_load($row->gid);
return t('Node author %name may !do this node', array(
'%name' => $account->name,
'!do' => $do,
));
case 'nodeaccess_userreference_all':
return t('All users may !do this node', array(
'!do' => $do,
));
}
}
}
}