/**
  * {@inheritdoc}
  */
 public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type)
 {
     $form = parent::overviewSearchFormPart($form, $form_state, $type);
     if ($type == ConfigSource::SIMPLE_CONFIG) {
         $label_key = 'name';
         $label = t('Simple configuration');
     } else {
         $entity_type = \Drupal::entityManager()->getDefinition($type);
         $label_key = $entity_type->getKey('label');
         $label = $entity_type->getLabel();
     }
     if (!empty($label_key)) {
         $form['search_wrapper']['search'][$label_key] = array('#type' => 'textfield', '#title' => t('@entity_name title', array('@entity_name' => $label)), '#size' => 25, '#default_value' => isset($_GET[$label_key]) ? $_GET[$label_key] : NULL);
     }
     $form['search_wrapper']['search']['langcode'] = array('#type' => 'language_select', '#title' => t('Source Language'), '#empty_option' => t('- Any -'), '#default_value' => isset($_GET['langcode']) ? $_GET['langcode'] : NULL);
     $form['search_wrapper']['search']['target_language'] = array('#type' => 'language_select', '#title' => $this->t('Target language'), '#empty_option' => $this->t('- Any -'), '#default_value' => isset($_GET['target_language']) ? $_GET['target_language'] : NULL);
     $form['search_wrapper']['search']['target_status'] = array('#type' => 'select', '#title' => $this->t('Target status'), '#options' => array('untranslated' => $this->t('Untranslated'), 'translated' => $this->t('Translated')), '#default_value' => isset($_GET['target_status']) ? $_GET['target_status'] : NULL, '#states' => array('invisible' => array(':input[name="search[target_language]"]' => array('value' => ''))));
     return $form;
 }
 /**
  * {@inheritdoc}
  */
 public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type)
 {
     $form = parent::overviewSearchFormPart($form, $form_state, $type);
     $entity_type = \Drupal::entityManager()->getDefinition($type);
     $field_definitions = \Drupal::entityManager()->getBaseFieldDefinitions($type);
     $label_key = $entity_type->getKey('label');
     if (!empty($label_key)) {
         $label = (string) $field_definitions[$label_key]->getlabel();
         $form['search_wrapper']['search'][$label_key] = array('#type' => 'textfield', '#title' => $label, '#size' => 25, '#default_value' => isset($_GET[$label_key]) ? $_GET[$label_key] : NULL);
     }
     $form['search_wrapper']['search']['langcode'] = array('#type' => 'language_select', '#title' => t('Source Language'), '#empty_option' => t('- Any -'), '#default_value' => isset($_GET['langcode']) ? $_GET['langcode'] : NULL);
     $bundle_key = $entity_type->getKey('bundle');
     $bundle_options = $this->getTranslatableBundles($type);
     if (count($bundle_options) > 1) {
         $form['search_wrapper']['search'][$bundle_key] = array('#type' => 'select', '#title' => $entity_type->getBundleLabel(), '#options' => $bundle_options, '#empty_option' => t('- Any -'), '#default_value' => isset($_GET[$bundle_key]) ? $_GET[$bundle_key] : NULL);
     } elseif (count($bundle_options) == 0) {
         drupal_set_message($this->t('Entity translation is not enabled for any of existing content types. To use this functionality go to Content types administration and enable entity translation for desired content types.'), 'warning');
         unset($form['search_wrapper']);
         return $form;
     }
     $form['search_wrapper']['search']['target_language'] = array('#type' => 'language_select', '#title' => $this->t('Target language'), '#empty_option' => $this->t('- Any -'), '#default_value' => isset($_GET['target_language']) ? $_GET['target_language'] : NULL);
     $form['search_wrapper']['search']['target_status'] = array('#type' => 'select', '#title' => $this->t('Target status'), '#options' => array('untranslated_or_outdated' => $this->t('Untranslated or outdated'), 'untranslated' => $this->t('Untranslated'), 'outdated' => $this->t('Outdated')), '#default_value' => isset($_GET['target_status']) ? $_GET['target_status'] : NULL, '#states' => array('invisible' => array(':input[name="search[target_language]"]' => array('value' => ''))));
     return $form;
 }
 /**
  * {@inheritdoc}
  */
 public function overviewSearchFormPart(array $form, FormStateInterface $form_state, $type)
 {
     $form = parent::overviewSearchFormPart($form, $form_state, $type);
     $options = array();
     foreach (\Drupal::languageManager()->getLanguages() as $langcode => $language) {
         $options[$langcode] = $language->getName();
     }
     $default_values = $this->getSearchFormSubmittedParams();
     $form['search_wrapper']['search']['label'] = array('#type' => 'textfield', '#title' => t('Source text'), '#default_value' => isset($default_values['label']) ? $default_values['label'] : NULL);
     // Unset English as it is the source language for all locale strings.
     unset($options['en']);
     $form['search_wrapper']['search']['missing_target_language'] = array('#type' => 'select', '#title' => t('Not translated to'), '#options' => $options, '#empty_option' => '--', '#default_value' => isset($default_values['missing_target_language']) ? $default_values['missing_target_language'] : NULL);
     return $form;
 }