public TranslateFilterForm::buildForm(array $form, FormStateInterface $form_state)
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
- core/modules/locale/src/Form/TranslateFilterForm.php, line 22
Class
- TranslateFilterForm
- Provides a filtered translation edit form.
Namespace
Drupal\locale\Form
Code
public function buildForm(array $form, FormStateInterface $form_state) { $filters = $this->translateFilters(); $filter_values = $this->translateFilterValues(); $form['#attached']['library'][] = 'locale/drupal.locale.admin'; $form['filters'] = array( '#type' => 'details', '#title' => $this->t('Filter translatable strings'), '#open' => TRUE, ); foreach ($filters as $key => $filter) { // Special case for 'string' filter. if ($key == 'string') { $form['filters']['status']['string'] = array( '#type' => 'search', '#title' => $filter['title'], '#description' => $filter['description'], '#default_value' => $filter_values[$key], ); } else { $empty_option = isset($filter['options'][$filter['default']]) ? $filter['options'][$filter['default']] : '- None -'; $form['filters']['status'][$key] = array( '#title' => $filter['title'], '#type' => 'select', '#empty_value' => $filter['default'], '#empty_option' => $empty_option, '#size' => 0, '#options' => $filter['options'], '#default_value' => $filter_values[$key], ); if (isset($filter['states'])) { $form['filters']['status'][$key]['#states'] = $filter['states']; } } } $form['filters']['actions'] = array( '#type' => 'actions', '#attributes' => array('class' => array('container-inline')), ); $form['filters']['actions']['submit'] = array( '#type' => 'submit', '#value' => $this->t('Filter'), ); if (!empty($_SESSION['locale_translate_filter'])) { $form['filters']['actions']['reset'] = array( '#type' => 'submit', '#value' => $this->t('Reset'), '#submit' => array('::resetForm'), ); } return $form; }
Please login to continue.