You are here

function pmpermission_permission_per_bundle in Drupal PM (Project Management) 7.2

Creates an array of permission name for the given node bundle.

Parameters

string $bundle_name: Node bundle name.

Return value

array Array equivalent to the return of hook_permission().

1 call to pmpermission_permission_per_bundle()
pmpermission_permission in pmpermission/pmpermission.module
Implements hook_permission().

File

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

Code

function pmpermission_permission_per_bundle($bundle_name) {
  $name = node_type_get_name($bundle_name);
  $bundle_name = check_plain($bundle_name);
  $permissions = array();
  if (!variable_get('node_permissions_' . $bundle_name, 1)) {
    $permissions += _pmpermission_permission_default($bundle_name, $name);
  }
  if (module_exists('pmorganization')) {
    if (_pmpermission_get_field_name($bundle_name, 'parent') or $bundle_name == 'pmorganization') {
      $permissions += _pmpermission_permission_belonged($bundle_name, $name, 'Organization');
    }
  }
  if (module_exists('pmproject')) {
    if (_pmpermission_get_field_name($bundle_name, 'pm')) {
      $permissions += _pmpermission_permission_assigned($bundle_name, $name, 'Project Manager');
    }
  }
  if (_pmpermission_get_field_name($bundle_name, 'assigned')) {
    $permissions += _pmpermission_permission_assigned($bundle_name, $name, 'Assigned');
  }
  return $permissions;
}