protected function VideoUploadWidget::formMultipleElements in Video 8
Same name and namespace in other branches
- 8.2 src/Plugin/Field/FieldWidget/VideoUploadWidget.php \Drupal\video\Plugin\Field\FieldWidget\VideoUploadWidget::formMultipleElements()
Overrides \Drupal\file\Plugin\Field\FieldWidget\FileWidget::formMultipleElements().
Special handling for draggable multiple widgets and 'add more' button.
Overrides FileWidget::formMultipleElements
File
- src/Plugin/ Field/ FieldWidget/ VideoUploadWidget.php, line 168 
Class
- VideoUploadWidget
- Plugin implementation of the 'video_upload' widget.
Namespace
Drupal\video\Plugin\Field\FieldWidgetCode
protected function formMultipleElements(FieldItemListInterface $items, array &$form, FormStateInterface $form_state) {
  $elements = parent::formMultipleElements($items, $form, $form_state);
  $cardinality = $this->fieldDefinition
    ->getFieldStorageDefinition()
    ->getCardinality();
  $file_upload_help = [
    '#theme' => 'file_upload_help',
    '#description' => '',
    '#upload_validators' => $elements[0]['#upload_validators'],
    '#cardinality' => $cardinality,
  ];
  if ($cardinality == 1) {
    // If there's only one field, return it as delta 0.
    if (empty($elements[0]['#default_value']['fids'])) {
      $file_upload_help['#description'] = $this->fieldDefinition
        ->getDescription();
      $elements[0]['#description'] = \Drupal::service('renderer')
        ->renderPlain($file_upload_help);
    }
  }
  else {
    $elements['#file_upload_description'] = $file_upload_help;
  }
  return $elements;
}