class FieldInstanceWidgetSettings

Same name and namespace in other branches
  1. 9 core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php \Drupal\field\Plugin\migrate\process\d6\FieldInstanceWidgetSettings
  2. 8.9.x core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php \Drupal\field\Plugin\migrate\process\d6\FieldInstanceWidgetSettings
  3. 11.x core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php \Drupal\field\Plugin\migrate\process\d6\FieldInstanceWidgetSettings

Get the field instance widget settings.

Hierarchy

Expanded class hierarchy of FieldInstanceWidgetSettings

File

core/modules/field/src/Plugin/migrate/process/d6/FieldInstanceWidgetSettings.php, line 15

Namespace

Drupal\field\Plugin\migrate\process\d6
View source
class FieldInstanceWidgetSettings extends ProcessPluginBase {
  
  /**
   * {@inheritdoc}
   *
   * Get the field instance default/mapped widget settings.
   */
  public function transform($value, MigrateExecutableInterface $migrate_executable, Row $row, $destination_property) {
    [
      $widget_type,
      $widget_settings,
    ] = $value;
    return $this->getSettings($widget_type, $widget_settings);
  }
  
  /**
   * Merge the default D8 and specified D6 settings for a widget type.
   *
   * @param string $widget_type
   *   The widget type.
   * @param array $widget_settings
   *   The widget settings from D6 for this widget.
   *
   * @return array
   *   A valid array of settings.
   */
  public function getSettings($widget_type, $widget_settings) {
    $progress = $widget_settings['progress_indicator'] ?? 'throbber';
    $size = $widget_settings['size'] ?? 60;
    $rows = $widget_settings['rows'] ?? 5;
    $settings = [
      'text_textfield' => [
        'size' => $size,
        'placeholder' => '',
      ],
      'text_textarea' => [
        'rows' => $rows,
        'placeholder' => '',
      ],
      'number' => [
        'placeholder' => '',
      ],
      'email_textfield' => [
        'placeholder' => '',
      ],
      'link' => [
        'placeholder_url' => '',
        'placeholder_title' => '',
      ],
      'filefield_widget' => [
        'progress_indicator' => $progress,
      ],
      'imagefield_widget' => [
        'progress_indicator' => $progress,
        'preview_image_style' => 'thumbnail',
      ],
      'optionwidgets_onoff' => [
        'display_label' => FALSE,
      ],
      'phone_textfield' => [
        'placeholder' => '',
      ],
    ];
    return $settings[$widget_type] ?? [];
  }

}

Members

Title Sort descending Modifiers Object type Summary Overriden Title Overrides
FieldInstanceWidgetSettings::getSettings public function Merge the default D8 and specified D6 settings for a widget type.
FieldInstanceWidgetSettings::transform public function Get the field instance default/mapped widget settings. Overrides ProcessPluginBase::transform
PluginInspectionInterface::getPluginDefinition public function Gets the definition of the plugin implementation. 6
PluginInspectionInterface::getPluginId public function Gets the plugin ID of the plugin instance. 2
ProcessPluginBase::$stopPipeline protected property Determines if processing of the pipeline is stopped.
ProcessPluginBase::isPipelineStopped public function Determines if the pipeline should stop processing. Overrides MigrateProcessInterface::isPipelineStopped
ProcessPluginBase::multiple public function Indicates whether the returned value requires multiple handling. Overrides MigrateProcessInterface::multiple 3
ProcessPluginBase::reset public function Resets the internal data of a plugin. Overrides MigrateProcessInterface::reset
ProcessPluginBase::stopPipeline protected function Stops pipeline processing after this plugin finishes.

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.