diff --git a/modules/opd_daily_emails/src/Action/AddRandomCtaToDailyEmail.php b/modules/opd_daily_emails/src/Action/AddRandomCtaToDailyEmail.php index 49fc77ac1..f750402c9 100644 --- a/modules/opd_daily_emails/src/Action/AddRandomCtaToDailyEmail.php +++ b/modules/opd_daily_emails/src/Action/AddRandomCtaToDailyEmail.php @@ -30,14 +30,7 @@ readonly final class AddRandomCtaToDailyEmail { return; } - $nodeStorage = $this->entityTypeManager->getStorage('node'); - $query = $nodeStorage->getQuery(); - $query->condition('status', NodeInterface::PUBLISHED); - $query->condition('type', 'daily_email_cta'); - $query->accessCheck(); - $ctaNodes = $nodeStorage->loadMultiple($query->execute()); - - $ctas = Ctas::fromNodes($ctaNodes); + $ctas = $this->getCtas(); if ($ctas->isEmpty()) { return; @@ -46,4 +39,16 @@ readonly final class AddRandomCtaToDailyEmail { $email->set('field_daily_email_cta', $ctas->getRandomCta()); } + private function getCtas(): Ctas { + $nodeStorage = $this->entityTypeManager->getStorage('node'); + $query = $nodeStorage->getQuery(); + $query->condition('status', NodeInterface::PUBLISHED); + $query->condition('type', 'daily_email_cta'); + $query->accessCheck(); + + $ctaNodes = $nodeStorage->loadMultiple($query->execute()); + + return Ctas::fromNodes($ctaNodes); + } + }