You are here

function uuid_field_collection_features_export_render in UUID Features Integration 7

Implements hook_features_export_render().

File

includes/uuid_field_collection.features.inc, line 66
Features hooks for the uuid_field_collection features component.

Code

function uuid_field_collection_features_export_render($module, $data) {
  $translatables = $code = $return = array();
  $code[] = '  $field_collections = array();';
  $code[] = '';
  foreach ($data as $uuid) {
    $field_collections = entity_uuid_load('field_collection_item', array(
      $uuid,
    ), array(), TRUE);
    if (!count($field_collections)) {
      continue;
    }
    $field_collection = reset($field_collections);

    // Clone entity to avoid changes by reference.
    $export = clone $field_collection;

    // Do not export ids.
    unset($export->item_id);
    unset($export->revision_id);
    $files = uuid_features_file_field_export($export, 'field_collection_item');
    $entity_type = 'field_collection_item';
    drupal_alter('uuid_entity_features_export_render', $entity_type, $export, $field_collection, $module);
    $code[] = '  $field_collections[] = ' . features_var_export(get_object_vars($export), '  ') . ';';

    // Add packaged files, if any.
    if (!empty($files)) {
      foreach ($files as $filename => $src_path) {
        $return[$filename] = $src_path;
      }
    }
  }
  if (!empty($translatables)) {
    $code[] = features_translatables_export($translatables, '  ');
  }
  $code[] = '  return $field_collections;';
  $code = implode("\n", $code);
  $return['uuid_features_default_field_collections'] = $code;
  return $return;
}