function _entityreference_migration_references_field_to_entityreference_field_create_instance in Reference to EntityReference Field Migration 7
Same name and namespace in other branches
- 7.2 entityreference_migration.module \_entityreference_migration_references_field_to_entityreference_field_create_instance()
Create the bundle instances of entityreference fields.
1 call to _entityreference_migration_references_field_to_entityreference_field_create_instance()
- _entityreference_migration_references_field_to_entityreference_field in ./
entityreference_migration.module - Migrate a field from references to entityreference.
File
- ./
entityreference_migration.module, line 287
Code
function _entityreference_migration_references_field_to_entityreference_field_create_instance($entityreference_field, $instance) {
$entityreference_instance = array(
'label' => $instance['label'],
'required' => $instance['required'],
'description' => $instance['description'],
'default_value' => $instance['default_value'],
'field_name' => $instance['field_name'],
'entity_type' => $instance['entity_type'],
'bundle' => $instance['bundle'],
'deleted' => $instance['deleted'],
);
// Add in the widget and appropriate settings (TODO for more flexibility)
if (isset($instance['widget'])) {
$entityreference_instance['widget'] = array(
'weight' => $instance['widget']['weight'],
'type' => 'entityreference_autocomplete',
'module' => 'entityreference',
'active' => 1,
'settings' => array(
'match_operator' => 'CONTAINS',
'size' => 60,
'path' => '',
),
);
}
// Add in the display and appropriate settings
if (isset($instance['display'])) {
foreach ($instance['display'] as $display_name => $instance_display) {
$entityreference_instance['display'][$display_name] = array(
'label' => $instance_display['label'],
'weight' => $instance_display['weight'],
'module' => 'entityreference',
);
if ($instance_display['type'] == 'node_reference_node' || $instance_display['type'] == 'user_reference_user') {
$entityreference_instance['display'][$display_name]['type'] = 'entityreference_entity_view';
$entityreference_instance['display'][$display_name]['settings'] = array(
'view_mode' => $instance_display['settings'][$instance_display['module'] . '_view_mode'],
);
}
else {
if ($instance_display['type'] == 'node_reference_default' || $instance_display['type'] == 'user_reference_default') {
$entityreference_instance['display'][$display_name]['type'] = 'entityreference_label';
$entityreference_instance['display'][$display_name]['settings'] = array(
'link' => TRUE,
);
}
else {
$entityreference_instance['display'][$display_name]['type'] = 'entityreference_label';
$entityreference_instance['display'][$display_name]['settings'] = array(
'link' => TRUE,
);
}
}
}
}
$entityreference_instance = field_create_instance($entityreference_instance);
return $entityreference_instance;
}