You are here

public function UcProductImageFormatter::settingsSummary in Ubercart 8.4

Returns a short summary for the current formatter settings.

If an empty result is returned, a UI can still be provided to display a settings form in case the formatter has configurable settings.

Return value

string[] A short summary of the formatter settings.

Overrides FormatterBase::settingsSummary

File

uc_product/src/Plugin/Field/FieldFormatter/UcProductImageFormatter.php, line 65

Class

UcProductImageFormatter
Plugin implementation of the 'uc_product_image' formatter.

Namespace

Drupal\uc_product\Plugin\Field\FieldFormatter

Code

public function settingsSummary() {
  $summary = [];
  $image_styles = image_style_options(FALSE);

  // Unset possible 'No defined styles' option.
  unset($image_styles['']);

  // Styles could be lost because of enabled/disabled modules that defines
  // their styles in code.
  $image_style_setting = $this
    ->getSetting('first_image_style');
  if (!isset($image_styles[$image_style_setting])) {
    $image_styles[$image_style_setting] = $this
      ->t('Original image');
  }
  $summary[] = $this
    ->t('First image style: @style', [
    '@style' => $image_styles[$image_style_setting],
  ]);
  $image_style_setting = $this
    ->getSetting('other_image_style');
  if (!isset($image_styles[$image_style_setting])) {
    $image_styles[$image_style_setting] = $this
      ->t('Original image');
  }
  $summary[] = $this
    ->t('Subsequent image style: @style', [
    '@style' => $image_styles[$image_style_setting],
  ]);
  $link_types = [
    'content' => $this
      ->t('Linked to content'),
    'file' => $this
      ->t('Linked to file'),
  ];

  // Display this setting only if image is linked.
  $image_link_setting = $this
    ->getSetting('image_link');
  if (isset($link_types[$image_link_setting])) {
    $summary[] = $link_types[$image_link_setting];
  }
  return $summary;
}