public function SmartDateRecurrenceFormatter::settingsForm in Smart Date 3.2.x
Same name and namespace in other branches
- 8.2 modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
- 3.x modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
- 3.0.x modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
- 3.1.x modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
- 3.3.x modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
- 3.4.x modules/smart_date_recur/src/Plugin/Field/FieldFormatter/SmartDateRecurrenceFormatter.php \Drupal\smart_date_recur\Plugin\Field\FieldFormatter\SmartDateRecurrenceFormatter::settingsForm()
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 SmartDateDefaultFormatter::settingsForm
File
- modules/
smart_date_recur/ src/ Plugin/ Field/ FieldFormatter/ SmartDateRecurrenceFormatter.php, line 46
Class
- SmartDateRecurrenceFormatter
- Plugin for a recurrence-optimized formatter for 'smartdate' fields.
Namespace
Drupal\smart_date_recur\Plugin\Field\FieldFormatterCode
public function settingsForm(array $form, FormStateInterface $form_state) {
// Use the upstream settings form, which gives us a control to override the
// timezone.
$form = parent::settingsForm($form, $form_state);
// Ask the user to choose how many past and upcoming instances to display.
$form['past_display'] = [
'#type' => 'number',
'#title' => $this
->t('Recent Instances'),
'#description' => $this
->t('Specify how many recent instances to display'),
'#default_value' => $this
->getSetting('past_display'),
];
$form['upcoming_display'] = [
'#type' => 'number',
'#title' => $this
->t('Upcoming Instances'),
'#description' => $this
->t('Specify how many upcoming instances to display'),
'#default_value' => $this
->getSetting('upcoming_display'),
];
$form['show_next'] = [
'#type' => 'checkbox',
'#title' => $this
->t('Show next instance separately'),
'#description' => $this
->t('Isolate the next instance to make it more obvious'),
'#default_value' => $this
->getSetting('show_next'),
'#states' => [
// Show this option only if at least one upcoming value will be shown.
'invisible' => [
[
':input[name$="[settings_edit_form][settings][upcoming_display]"]' => [
'filled' => FALSE,
],
],
[
':input[name$="[settings_edit_form][settings][upcoming_display]"]' => [
'value' => '0',
],
],
],
],
];
return $form;
}