From 988a1d989aa138e9972c51376cb02fceaf2a0ee1 Mon Sep 17 00:00:00 2001 From: Willow Gillingham Date: Wed, 20 Sep 2023 12:35:03 -0400 Subject: [PATCH] check that the underlying entity has the parent reference field before trying to get() it (#979) Co-authored-by: Willow Gillingham --- src/Plugin/Condition/NodeHasParent.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Plugin/Condition/NodeHasParent.php b/src/Plugin/Condition/NodeHasParent.php index 5002707f..ed7ddfd4 100644 --- a/src/Plugin/Condition/NodeHasParent.php +++ b/src/Plugin/Condition/NodeHasParent.php @@ -137,9 +137,9 @@ class NodeHasParent extends ConditionPluginBase implements ContainerFactoryPlugi * TRUE if entity references the specified parent. */ protected function evaluateEntity(EntityInterface $entity) { + $parent_reference_field = $this->configuration['parent_reference_field']; foreach ($entity->referencedEntities() as $referenced_entity) { - if ($entity->getEntityTypeID() == 'node' && $referenced_entity->getEntityTypeId() == 'node') { - $parent_reference_field = $this->configuration['parent_reference_field']; + if ($entity->getEntityTypeID() == 'node' && $referenced_entity->getEntityTypeId() == 'node' && $entity->hasField($parent_reference_field)) { $field = $entity->get($parent_reference_field); if (!$field->isEmpty()) { $nids = $field->getValue();