Updated to Drupal 8.6.4, which is PHP 7.3 friendly. Also updated HTMLaw library....
[yaffs-website] / web / core / modules / serialization / src / Normalizer / EntityReferenceFieldItemNormalizerTrait.php
1 <?php
2
3 namespace Drupal\serialization\Normalizer;
4
5 use Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem;
6
7 /**
8  * Converts empty reference values for entity reference items.
9  */
10 trait EntityReferenceFieldItemNormalizerTrait {
11
12   protected function normalizeRootReferenceValue(&$values, EntityReferenceItem $field_item) {
13     // @todo Generalize for all tree-structured entity types.
14     if ($this->fieldItemReferencesTaxonomyTerm($field_item) && empty($values['target_id'])) {
15       $values['target_id'] = NULL;
16     }
17   }
18
19   /**
20    * Determines if a field item references a taxonomy term.
21    *
22    * @param \Drupal\Core\Field\Plugin\Field\FieldType\EntityReferenceItem $field_item
23    *
24    * @return bool
25    */
26   protected function fieldItemReferencesTaxonomyTerm(EntityReferenceItem $field_item) {
27     return $field_item->getFieldDefinition()->getSetting('target_type') === 'taxonomy_term';
28   }
29
30 }