You are here

function oa_clone_get_orphan_content in Open Atrium Clone 7.2

Returns non-sectio/non-subgroup content of a group.

1 call to oa_clone_get_orphan_content()
_oa_clone_batch_space in ./oa_clone.module
Recursively clone a Space while setting up a batch for cloning content.

File

./oa_clone.module, line 714

Code

function oa_clone_get_orphan_content($space_nid, $bypass_access_check = FALSE) {
  $query = db_select('node', 'n');
  $query
    ->fields('n', array(
    'nid',
  ));
  $query
    ->addJoin('LEFT', 'field_data_oa_section_ref', 'f', 'f.entity_id = n.nid');
  $query
    ->addJoin('INNER', 'og_membership', 'om', "om.group_type = 'node' AND om.entity_type = 'node' AND om.etid = n.nid");
  $query
    ->isNull('f.oa_section_ref_target_id');
  $query
    ->condition('gid', $space_nid);
  $query
    ->condition('n.type', array(
    'oa_group',
    'oa_space',
    'oa_section',
  ), 'NOT IN');
  $query
    ->condition('om.state', OG_STATE_ACTIVE);
  if (!$bypass_access_check) {
    $query
      ->addTag('node_access');
    $query
      ->condition('n.status', 1);
  }
  $result = $query
    ->execute();
  return $result
    ->fetchCol();
}