You are here

public function SortWidgetBase::sortCombineSubmitForm in Better Exposed Filters 8.5

Same name and namespace in other branches
  1. 8.4 src/Plugin/better_exposed_filters/sort/SortWidgetBase.php \Drupal\better_exposed_filters\Plugin\better_exposed_filters\sort\SortWidgetBase::sortCombineSubmitForm()

Unpacks sort_by and sort_order from the sort_bef_combine element.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

File

src/Plugin/better_exposed_filters/sort/SortWidgetBase.php, line 266

Class

SortWidgetBase
Base class for Better exposed pager widget plugins.

Namespace

Drupal\better_exposed_filters\Plugin\better_exposed_filters\sort

Code

public function sortCombineSubmitForm(array $form, FormStateInterface $form_state) {
  $sort_by = $sort_order = '';
  $combined = $form_state
    ->getValue('sort_bef_combine');
  if (!empty($combined)) {
    $parts = explode('_', $combined);
    $sort_order = trim(array_pop($parts));
    $sort_by = trim(implode('_', $parts));
  }
  $form_state
    ->setValue('sort_by', $sort_by);
  $form_state
    ->setValue('sort_order', $sort_order);
}