X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;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=f3baf763d342a5f82576890e2a8111a5aaf139dc;hp=0000000000000000000000000000000000000000;hpb=059867c3f96750652c80f39e44c442a58c2549ee;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; + } + +}