You are here

public function ModuleFilterUpdateStatusForm::buildForm in Module Filter 8

Same name and namespace in other branches
  1. 8.3 src/Form/ModuleFilterUpdateStatusForm.php \Drupal\module_filter\Form\ModuleFilterUpdateStatusForm::buildForm()

Form constructor.

Parameters

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

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

Return value

array The form structure.

Overrides FormInterface::buildForm

File

src/Form/ModuleFilterUpdateStatusForm.php, line 51
Contains \Drupal\module_filter\Form\ModuleFilterUpdateStatusForm.

Class

ModuleFilterUpdateStatusForm
@todo.

Namespace

Drupal\module_filter\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $form['module_filter'] = [
    '#type' => 'module_filter',
    '#attached' => [
      'library' => [
        'module_filter/drupal.module_filter.update_status',
      ],
    ],
  ];
  $show = \Drupal::request()->query
    ->get('show', 'all');
  $form['module_filter']['show'] = [
    '#type' => 'radios',
    '#default_value' => in_array($show, [
      'all',
      'updates',
      'security',
      'unknown',
    ]) ? $show : 'all',
    '#options' => [
      'all' => $this
        ->t('All'),
      'updates' => $this
        ->t('Update available'),
      'security' => $this
        ->t('Security update'),
      'unknown' => $this
        ->t('Unknown'),
    ],
    '#prefix' => '<div id="module-filter-show-wrapper">',
    '#suffix' => '</div>',
  ];
  if ($this->moduleHandler
    ->moduleExists('update_advanced')) {
    $options = $form['module_filter']['show']['#options'];
    $form['module_filter']['show']['#options'] = array_slice($options, 0, 2);
    $form['module_filter']['show']['#options']['ignore'] = $this
      ->t('Ignored from settings');
    $form['module_filter']['show']['#options'] = array_merge($form['module_filter']['show']['#options'], array_slice($options, 2));
  }
  return $form;
}