Implements Drupal\field\Plugin\Type\Formatter\FormatterInterface::settingsForm().
Overrides FormatterBase::settingsForm
public function settingsForm(array $form, array &$form_state) {
$picture_options = array();
$picture_mappings = entity_load_multiple('picture_mapping');
if ($picture_mappings && !empty($picture_mappings)) {
foreach ($picture_mappings as $machine_name => $picture_mapping) {
if ($picture_mapping
->hasMappings()) {
$picture_options[$machine_name] = $picture_mapping
->label();
}
}
}
$elements['picture_mapping'] = array(
'#title' => t('Picture mapping'),
'#type' => 'select',
'#default_value' => $this
->getSetting('picture_mapping'),
'#required' => TRUE,
'#options' => $picture_options,
);
$image_styles = image_style_options(FALSE);
$elements['fallback_image_style'] = array(
'#title' => t('Fallback image style'),
'#type' => 'select',
'#default_value' => $this
->getSetting('fallback_image_style'),
'#empty_option' => t('Automatic'),
'#options' => $image_styles,
);
$link_types = array(
'content' => t('Content'),
'file' => t('File'),
);
$elements['image_link'] = array(
'#title' => t('Link image to'),
'#type' => 'select',
'#default_value' => $this
->getSetting('image_link'),
'#empty_option' => t('Nothing'),
'#options' => $link_types,
);
return $elements;
}