Chris@0: /** Chris@0: * Implements hook_node_access(). Chris@0: */ Chris@0: function {{ machine_name }}_node_access($node, $op, $account) { Chris@0: $type = is_string($node) ? $node : $node->type; Chris@0: Chris@0: if (in_array($type, node_permissions_get_configured_types())) { Chris@0: if ($op == 'create' && user_access('create ' . $type . ' content', $account)) { Chris@0: return NODE_ACCESS_ALLOW; Chris@0: } Chris@0: Chris@0: if ($op == 'update') { Chris@0: if (user_access('edit any ' . $type . ' content', $account) || (user_access('edit own ' . $type . ' content', $account) && ($account->uid == $node->uid))) { Chris@0: return NODE_ACCESS_ALLOW; Chris@0: } Chris@0: } Chris@0: Chris@0: if ($op == 'delete') { Chris@0: if (user_access('delete any ' . $type . ' content', $account) || (user_access('delete own ' . $type . ' content', $account) && ($account->uid == $node->uid))) { Chris@0: return NODE_ACCESS_ALLOW; Chris@0: } Chris@0: } Chris@0: } Chris@0: Chris@0: // Returning nothing from this function would have the same effect. Chris@0: return NODE_ACCESS_IGNORE; Chris@0: }