3 namespace Drupal\field\Plugin\migrate\process\d6;
5 use Drupal\migrate\MigrateExecutableInterface;
6 use Drupal\migrate\ProcessPluginBase;
7 use Drupal\migrate\Row;
10 * @MigrateProcessPlugin(
11 * id = "d6_field_instance_defaults"
14 class FieldInstanceDefaults extends ProcessPluginBase {
19 * Set the field instance defaults.
21 public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
22 list($widget_type, $widget_settings) = $value;
25 switch ($widget_type) {
26 case 'text_textfield':
28 case 'phone_textfield':
29 if (!empty($widget_settings['default_value'][0]['value'])) {
30 $default['value'] = $widget_settings['default_value'][0]['value'];
34 case 'imagefield_widget':
35 // @todo, load the image and populate the defaults.
36 // $default['default_image'] = $widget_settings['default_image'];
40 if (!empty($widget_settings['default_value'])) {
41 $default['default_date_type'] = 'relative';
42 $default['default_date'] = $widget_settings['default_value'];
46 case 'email_textfield':
47 if (!empty($widget_settings['default_value'][0]['email'])) {
48 $default['value'] = $widget_settings['default_value'][0]['email'];
53 if (!empty($widget_settings['default_value'][0]['url'])) {
54 $default['title'] = $widget_settings['default_value'][0]['title'];
55 $default['url'] = $widget_settings['default_value'][0]['url'];
56 $default['options'] = ['attributes' => []];
60 if (!empty($default)) {
61 $default = [$default];