You are here

function _pmpermission_grants_default in Drupal PM (Project Management) 7.2

Generate default grants similar to drupal core.

1 call to _pmpermission_grants_default()
pmpermission_node_access_records in pmpermission/pmpermission.module
Implements hook_node_access_records().

File

pmpermission/pmpermission.module, line 440
Main module file for the pmpermission module.

Code

function _pmpermission_grants_default($node, $type) {

  // PM permission $type: view all.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_view_all",
    'gid' => 0,
    'grant_view' => 1,
    'grant_update' => 0,
    'grant_delete' => 0,
    'priority' => 0,
  );

  // PM permission $type: view own.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_view_own",
    'gid' => $node->uid,
    'grant_view' => 1,
    'grant_update' => 0,
    'grant_delete' => 0,
    'priority' => 0,
  );

  // PM permission $type: update all.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_update_all",
    'gid' => 0,
    'grant_view' => 0,
    'grant_update' => 1,
    'grant_delete' => 0,
    'priority' => 0,
  );

  // PM permission $type: update own.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_update_own",
    'gid' => $node->uid,
    'grant_view' => 0,
    'grant_update' => 1,
    'grant_delete' => 0,
    'priority' => 0,
  );

  // PM permission $type: delete all.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_delete_all",
    'gid' => 0,
    'grant_view' => 0,
    'grant_update' => 0,
    'grant_delete' => 1,
    'priority' => 0,
  );

  // PM permission $type: delete own.
  $grants[] = array(
    'realm' => "pmpermission_{$type}_delete_own",
    'gid' => $node->uid,
    'grant_view' => 0,
    'grant_update' => 0,
    'grant_delete' => 1,
    'priority' => 0,
  );
  return $grants;
}