protected function OptionsWidgetBase::getSelectedOptions

Determines selected options from the incoming field values.

Parameters

array $items: The field values.

Return value

array The array of corresponding selected options.

3 calls to OptionsWidgetBase::getSelectedOptions()
ButtonsWidget::formElement in drupal/core/modules/options/lib/Drupal/options/Plugin/field/widget/ButtonsWidget.php
Returns the form for a single field widget.
OnOffWidget::formElement in drupal/core/modules/options/lib/Drupal/options/Plugin/field/widget/OnOffWidget.php
Returns the form for a single field widget.
SelectWidget::formElement in drupal/core/modules/options/lib/Drupal/options/Plugin/field/widget/SelectWidget.php
Returns the form for a single field widget.

File

drupal/core/modules/options/lib/Drupal/options/Plugin/field/widget/OptionsWidgetBase.php, line 164
Contains \Drupal\options\Plugin\field\widget\OptionsWidgetBase.

Class

OptionsWidgetBase
Base class for the 'options_*' widgets.

Namespace

Drupal\options\Plugin\field\widget

Code

protected function getSelectedOptions(array $items) {

  // We need to check against a flat list of options.
  $flat_options = $this
    ->flattenOptions($this
    ->getOptions());
  $selected_options = array();
  foreach ($items as $item) {
    $value = $item[$this->column];

    // Keep the value if it actually is in the list of options (needs to be
    // checked against the flat list).
    if (isset($flat_options[$value])) {
      $selected_options[] = $value;
    }
  }
  return $selected_options;
}