function entityreference_migration_migrate_references_fields in Reference to EntityReference Field Migration 7.2
Same name and namespace in other branches
- 7 entityreference_migration.module \entityreference_migration_migrate_references_fields()
1 string reference to 'entityreference_migration_migrate_references_fields'
- entityreference_migration_menu in ./
entityreference_migration.module - Implementation of hook_menu().
File
- ./
entityreference_migration.module, line 21
Code
function entityreference_migration_migrate_references_fields($form, &$form_state) {
// Load all references fields.
$node_field_infos = field_read_fields(array(
'type' => 'node_reference',
), array(
'include_inactive' => TRUE,
'include_deleted' => TRUE,
));
$user_field_infos = field_read_fields(array(
'type' => 'user_reference',
), array(
'include_inactive' => TRUE,
'include_deleted' => TRUE,
));
$term_field_infos = field_read_fields(array(
'type' => 'taxonomy_term_reference',
), array(
'include_inactive' => TRUE,
'include_deleted' => TRUE,
));
$field_infos = $node_field_infos + $user_field_infos + $term_field_infos;
if (count($field_infos) > 0) {
$field_options = array();
foreach ($field_infos as $key => $field_info) {
$translate_array = array(
'@field_name' => $field_info['field_name'],
);
$instances = field_read_instances(array(
'field_name' => $field_info['field_name'],
), array(
'include_inactive' => TRUE,
'include_deleted' => TRUE,
));
$options_instances = array();
foreach ($instances as $instance) {
$options_instances[] = $instance['entity_type'] . ':' . $instance['bundle'] . ' (' . check_plain($instance['label']) . ')';
}
$translate_array['@instances'] = implode(', ', $options_instances);
$field_options[$key] = t($field_info['type'] . ' @field_name: Appears in [@instances]', $translate_array);
}
$form['field_information'] = array(
'#type' => 'value',
'#value' => $field_infos,
);
$form['field_options'] = array(
'#type' => 'checkboxes',
'#title' => t('Which references fields do you wish to migrate?'),
'#options' => $field_options,
'#required' => TRUE,
);
return confirm_form($form, t('Are you sure you wish to migrate the selected references fields?'), '<front>');
}
$form['message'] = array(
'#markup' => t('There are no references fields that need to be migrated at this time.'),
);
return $form;
}