function _pmpermission_get_assigned_id in Drupal PM (Project Management) 7.2
Should recursively hunt for a particular parent and get its id.
1 call to _pmpermission_get_assigned_id()
- _pmpermission_grants_assigned in pmpermission/
pmpermission.module - Generate grants for assigned permission set.
File
- pmpermission/
pmpermission.module, line 649 - Main module file for the pmpermission module.
Code
function _pmpermission_get_assigned_id($node, $type, $assigned) {
$assigned_nids = FALSE;
switch ($assigned) {
case 'Project Manager':
$field_name = variable_get("pmpermission_field_pm_reference", FALSE);
break;
case 'Assigned':
$field_name = variable_get("pmpermission_field_assigned_reference", FALSE);
break;
default:
break;
}
if ($field_name) {
try {
$wrapper = entity_metadata_wrapper('node', $node);
$field_info = field_info_field($field_name);
if ($field_info['cardinality'] == 1) {
$account = $wrapper->{$field_name}
->value();
if ($account) {
$assigned_nids[] = $account->uid;
}
}
else {
foreach ($wrapper->{$field_name}
->getIterator() as $account_wrapper) {
$assigned_nids[] = $account_wrapper
->getIdentifier();
}
}
} catch (Exception $e) {
_pmpermission_watchdog_log($e);
}
}
return $assigned_nids;
}