node_example_access

5 node_example.module node_example_access($op, $node)
6 node_example.module node_example_access($op, $node, $account)

Implementation of hook_access().

Node modules may implement node_access() to determine the operations users may perform on nodes. This example uses a very common access pattern.

File

developer/examples/node_example.module, line 56
This is an example outlining how a module can be used to define a new node type.

Code

function node_example_access($op, $node) {
  global $user;

  if ($op == 'create') {
    // Only users with permission to do so may create this node type.
    return user_access('create example node');
  }

  // Users who create a node may edit or delete it later, assuming they have the
  // necessary permissions.
  if ($op == 'update' || $op == 'delete') {
    if (user_access('edit own example nodes') && ($user->uid == $node->uid)) {
      return TRUE;
    }
  }
}
Login or register to post comments