From 76a64b69d801ee947535a8b75f4b6ae8cff2b4ca Mon Sep 17 00:00:00 2001
From: Kevin Ditscheid <kevin.ditscheid@sgalinski.de>
Date: Wed, 3 Jan 2024 10:12:16 +0100
Subject: [PATCH] [BUGFIX] Add a replacement for the deprecated set- and
 getLanguageOverlayMode

---
 Classes/Domain/Repository/JobRepository.php | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/Classes/Domain/Repository/JobRepository.php b/Classes/Domain/Repository/JobRepository.php
index 77ab3742..7c1acccd 100644
--- a/Classes/Domain/Repository/JobRepository.php
+++ b/Classes/Domain/Repository/JobRepository.php
@@ -27,6 +27,7 @@
 namespace SGalinski\SgJobs\Domain\Repository;
 
 use SGalinski\SgJobs\Domain\Model\Job;
+use TYPO3\CMS\Core\Context\LanguageAspect;
 use TYPO3\CMS\Extbase\Persistence\Exception\InvalidQueryException;
 use TYPO3\CMS\Extbase\Persistence\QueryInterface;
 use TYPO3\CMS\Extbase\Persistence\QueryResultInterface;
@@ -169,6 +170,19 @@ class JobRepository extends Repository {
 		$query = $this->createQuery();
 		$storagePageIds = $query->getQuerySettings()->getStoragePageIds();
 
+		// we always want to show all jobs if the strict mode is used (translated or
+		// created in the specific language w/o default)
+		$languageAspect = $query->getQuerySettings()->getLanguageAspect();
+		if ($languageAspect->getOverlayType() === LanguageAspect::OVERLAYS_ON) {
+			$newLanguageAspect = new LanguageAspect(
+				$languageAspect->getId(),
+				$languageAspect->getContentId(),
+				LanguageAspect::OVERLAYS_OFF,
+				$languageAspect->getFallbackChain()
+			);
+			$query->getQuerySettings()->setLanguageAspect($newLanguageAspect);
+		}
+
 		if (empty($storagePageIds)) {
 			// if no record storage page has been selected in the plugin, ignore it
 			$query->getQuerySettings()->setRespectStoragePage(FALSE);
-- 
GitLab