function media_browser_plus_uuid_entity_features_export_render_alter in Media Browser Plus 7.3
Implements hook_uuid_entity_features_export_render_alter().
File
- ./
media_browser_plus.module, line 933 - Media Browser Plus - enhanced file management functions.
Code
function media_browser_plus_uuid_entity_features_export_render_alter($entity_type, &$export, &$entity) {
$root_folder = media_browser_plus_get_media_root_folder();
// Take all reference fields in account.
$fields = uuid_features_get_field_items_iterator($export, $entity_type, 'taxonomy_term_reference');
foreach ($fields as $field_name => $field) {
if (isset($export->{$field_name})) {
foreach ($field as $language => $items) {
foreach ($items as $delta => $item) {
if ($export->{$field_name}[$language][$delta]['tid'] == $root_folder->tid || $export->{$field_name}[$language][$delta]['tid'] == $root_folder->uuid) {
$export->{$field_name}[$language][$delta]['tid'] = 'mbp_uuid_features_root_folder';
$export->{$field_name}[$language][$delta]['uuid'] = 'mbp_uuid_features_root_folder';
$export->mbp_uuid_features_root_folder = TRUE;
}
}
}
}
}
$fields = uuid_features_get_field_items_iterator($export, $entity_type, 'entityreference');
foreach ($fields as $field_name => $field) {
if (isset($export->{$field_name})) {
foreach ($field as $language => $items) {
foreach ($items as $delta => $item) {
if (in_array($root_folder->tid, $export->{$field_name}[$language][$delta]) || in_array($root_folder->uuid, $export->{$field_name}[$language][$delta])) {
$export->{$field_name}[$language][$delta]['target_id'] = 'mbp_uuid_features_root_folder';
$export->{$field_name}[$language][$delta]['uuid'] = 'mbp_uuid_features_root_folder';
$export->mbp_uuid_features_root_folder = TRUE;
}
}
}
}
}
// Ensure exported folders also have the generic media root set.
if ($entity_type == 'taxonomy_term' && $export->vocabulary_machine_name == 'media_folders' && !empty($export->parent)) {
$root_parents = array_keys($export->parent, $root_folder->uuid);
foreach ($root_parents as $key) {
$export->parent[$key] = 'mbp_uuid_features_root_folder';
}
if ($export->uuid == $root_folder->uuid) {
$export->uuid = 'mbp_uuid_features_root_folder';
}
}
}