public function BootstrapCarouselImageFormatter::settingsForm in Bootstrap Carousel Image Formatter 8.3
Returns a form to configure settings for the formatter.
Invoked from \Drupal\field_ui\Form\EntityDisplayFormBase to allow administrators to configure the formatter. The field_ui module takes care of handling submitted form values.
Parameters
array $form: The form where the settings form is being included in.
\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.
Return value
array The form elements for the formatter settings.
Overrides FormatterBase::settingsForm
File
- src/
Plugin/ Field/ FieldFormatter/ BootstrapCarouselImageFormatter.php, line 108
Class
- BootstrapCarouselImageFormatter
- Plugin implementation of the 'bootstrap_image_carousel_formatter' formatter.
Namespace
Drupal\bootstrap_carousel_if\Plugin\Field\FieldFormatterCode
public function settingsForm(array $form, FormStateInterface $form_state) {
$element = [];
$yesNo = [
0 => $this
->t('No'),
1 => $this
->t('Yes'),
];
$element['interval'] = [
'#title' => $this
->t('Interval'),
'#type' => 'textfield',
'#default_value' => $this
->getSetting('interval'),
'#size' => 10,
'#required' => TRUE,
];
$element['pause'] = [
'#title' => $this
->t('Pause on hover'),
'#type' => 'select',
'#options' => $yesNo,
'#default_value' => $this
->getSetting('pause'),
];
$element['wrap'] = [
'#title' => $this
->t('Wrap'),
'#type' => 'select',
'#options' => $yesNo,
'#default_value' => $this
->getSetting('wrap'),
];
$element['indicators'] = [
'#title' => $this
->t('Indicators'),
'#type' => 'select',
'#options' => $yesNo,
'#default_value' => $this
->getSetting('indicators'),
];
$element['controls'] = [
'#title' => $this
->t('Controls'),
'#type' => 'select',
'#options' => $yesNo,
'#default_value' => $this
->getSetting('controls'),
];
$image_styles = image_style_options(FALSE);
$element['image_style'] = [
'#title' => $this
->t('Image style'),
'#type' => 'select',
'#default_value' => $this
->getSetting('image_style'),
'#empty_option' => $this
->t('None (original image)'),
'#options' => $image_styles,
'#description' => [
'#markup' => $this->linkGenerator
->generate($this
->t('Configure Image Styles'), new Url('entity.image_style.collection')),
'#access' => $this->currentUser
->hasPermission('administer image styles'),
],
];
return $element;
}