public function ListWidget::massageFormValues in Select (or other) 8
Same name and namespace in other branches
- 4.x src/Plugin/Field/FieldWidget/ListWidget.php \Drupal\select_or_other\Plugin\Field\FieldWidget\ListWidget::massageFormValues()
Massages the form values into the format expected for field values.
Parameters
array $values: The submitted form values produced by the widget.
- If the widget does not manage multiple values itself, the array holds the values generated by the multiple copies of the $element generated by the formElement() method, keyed by delta.
- If the widget manages multiple values, the array holds the values of the form element generated by the formElement() method.
array $form: The form structure where field elements are attached to. This might be a full form structure, or a sub-element of a larger form.
\Drupal\Core\Form\FormStateInterface $form_state: The form state.
Return value
array An array of field values, keyed by delta.
Overrides WidgetBase::massageFormValues
File
- src/
Plugin/ Field/ FieldWidget/ ListWidget.php, line 93
Class
- ListWidget
- Plugin implementation of the 'select_or_other_list' widget.
Namespace
Drupal\select_or_other\Plugin\Field\FieldWidgetCode
public function massageFormValues(array $values, array $form, FormStateInterface $form_state) {
unset($values['select']);
unset($values['other']);
if ($this
->getSetting('add_other_value_to_allowed_values')) {
$new_values = $this
->extractNewValues($values);
if (!empty($new_values)) {
$this
->addNewValuesToAllowedValues($new_values);
}
}
return parent::massageFormValues($values, $form, $form_state);
}