Version 1
[yaffs-website] / web / core / lib / Drupal / Core / Field / Plugin / Field / FieldWidget / LanguageSelectWidget.php
1 <?php
2
3 namespace Drupal\Core\Field\Plugin\Field\FieldWidget;
4
5 use Drupal\Core\Field\FieldItemListInterface;
6 use Drupal\Core\Field\WidgetBase;
7 use Drupal\Core\Form\FormStateInterface;
8 use Drupal\Core\Language\LanguageInterface;
9
10 /**
11  * Plugin implementation of the 'Language' widget.
12  *
13  * @FieldWidget(
14  *   id = "language_select",
15  *   label = @Translation("Language select"),
16  *   field_types = {
17  *     "language"
18  *   }
19  * )
20  */
21 class LanguageSelectWidget extends WidgetBase {
22
23   /**
24    * {@inheritdoc}
25    */
26   public function formElement(FieldItemListInterface $items, $delta, array $element, array &$form, FormStateInterface $form_state) {
27     $element['value'] = $element + [
28       '#type' => 'language_select',
29       '#default_value' => $items[$delta]->value,
30       '#languages' => LanguageInterface::STATE_ALL,
31     ];
32
33     return $element;
34   }
35
36 }