X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;f=web%2Fmodules%2Fcontrib%2Fentity_reference_revisions%2Fsrc%2FPlugin%2FField%2FFieldWidget%2FEntityReferenceRevisionsAutocompleteWidget.php;fp=web%2Fmodules%2Fcontrib%2Fentity_reference_revisions%2Fsrc%2FPlugin%2FField%2FFieldWidget%2FEntityReferenceRevisionsAutocompleteWidget.php;h=faad139aba5389e3aa58ecd1e9559ce655d7f81c;hb=a2bd1bf0c2c1f1a17d188f4dc0726a45494cefae;hp=0000000000000000000000000000000000000000;hpb=57c063afa3f66b07c4bbddc2d6129a96d90f0aad;p=yaffs-website diff --git a/web/modules/contrib/entity_reference_revisions/src/Plugin/Field/FieldWidget/EntityReferenceRevisionsAutocompleteWidget.php b/web/modules/contrib/entity_reference_revisions/src/Plugin/Field/FieldWidget/EntityReferenceRevisionsAutocompleteWidget.php new file mode 100644 index 000000000..faad139ab --- /dev/null +++ b/web/modules/contrib/entity_reference_revisions/src/Plugin/Field/FieldWidget/EntityReferenceRevisionsAutocompleteWidget.php @@ -0,0 +1,44 @@ +fieldDefinition->getFieldStorageDefinition()->getSetting('target_type'); + foreach ($values as $key => $value) { + if($value['target_id']) { + $entity = \Drupal::entityTypeManager()->getStorage($entity_type)->load($value['target_id']); + // Add the current revision ID. + $values[$key]['target_revision_id'] = $entity->getRevisionId(); + } + // The entity_autocomplete form element returns an array when an entity + // was "autocreated", so we need to move it up a level. + if (is_array($value['target_id'])) { + unset($values[$key]['target_id']); + $values[$key] += $value['target_id']; + } + } + return $values; + } + +}