diff --git a/modules/islandora_breadcrumbs/src/IslandoraBreadcrumbBuilder.php b/modules/islandora_breadcrumbs/src/IslandoraBreadcrumbBuilder.php index 86090ff1..99ff4894 100644 --- a/modules/islandora_breadcrumbs/src/IslandoraBreadcrumbBuilder.php +++ b/modules/islandora_breadcrumbs/src/IslandoraBreadcrumbBuilder.php @@ -54,7 +54,7 @@ class IslandoraBreadcrumbBuilder implements BreadcrumbBuilderInterface { $nid = $attributes->getRawParameters()->get('node'); if (!empty($nid)) { $node = $this->nodeStorage->load($nid); - return (!empty($node) && $node->hasField($this->config->get('referenceField')) && !$node->get($this->config->get('referenceField'))->isEmpty()); + return (!empty($node) && $node->hasField($this->config->get('referenceField'))); } } diff --git a/modules/islandora_breadcrumbs/tests/src/Functional/BreadcrumbsTest.php b/modules/islandora_breadcrumbs/tests/src/Functional/BreadcrumbsTest.php index 18fa030e..80f5dbee 100644 --- a/modules/islandora_breadcrumbs/tests/src/Functional/BreadcrumbsTest.php +++ b/modules/islandora_breadcrumbs/tests/src/Functional/BreadcrumbsTest.php @@ -114,6 +114,18 @@ class BreadcrumbsTest extends IslandoraFunctionalTestBase { // We should still escape it and have the same trail as before. $this->assertBreadcrumb($this->nodeD->toUrl()->toString(), $breadcrumbs); + + // Delete 'A', removing it from the chain. + $this->nodeA->delete(); + + // The new breadcrumb chain without 'A'. + $breadcrumbs = [ + Url::fromRoute('')->toString() => 'Home', + $this->nodeB->toUrl()->toString() => $this->nodeB->label(), + $this->nodeC->toUrl()->toString() => $this->nodeC->label(), + ]; + + $this->assertBreadcrumb($this->nodeD->toUrl()->toString(), $breadcrumbs); } }