function _domain_store_grants in Domain Access 7.2
Same name and namespace in other branches
- 6.2 domain.module \_domain_store_grants()
- 7.3 domain.module \_domain_store_grants()
Store node_access records in the {domain_access} table.
Parameters
$nid: The node id being acted upon.
$grants: The grants passed by hook_node_access_records().
1 call to _domain_store_grants()
- domain_node_access_records in ./
domain.module - Implements hook_node_access_records()
File
- ./
domain.module, line 1798 - Core module functions for the Domain Access suite.
Code
function _domain_store_grants($nid, $grants = array()) {
// Store the grants records.
if ($nid > 0 && !empty($grants)) {
db_delete('domain_access')
->condition('nid', $nid)
->execute();
$values = array();
foreach ($grants as $grant) {
$values[] = array(
'nid' => $nid,
'gid' => $grant['gid'],
'realm' => $grant['realm'],
);
}
$query = db_insert('domain_access')
->fields(array(
'nid',
'gid',
'realm',
));
foreach ($values as $record) {
$query
->values($record);
}
$query
->execute();
}
// Reset the static lookup for this node.
domain_get_node_domains($nid, TRUE);
// Ensure that our default grant is present.
domain_set_default_grant();
}