From 1a82e95483d9e2c6c44b975cf8a68ed4a0292be9 Mon Sep 17 00:00:00 2001
From: Matthias Adrowski <matthias.adrowski@sgalinski.de>
Date: Wed, 22 Jun 2022 09:05:40 +0200
Subject: [PATCH] [TASK] Update to sg_seo 5.0 requirement, remove old TYPO3
 version_compare

---
 .../Controller/ListByCategoryController.php   |  18 --
 Classes/Controller/NewsByAuthorController.php |  23 +-
 Classes/Controller/OverviewController.php     |   7 -
 Classes/Controller/SingleViewController.php   |  16 +-
 Classes/Service/HeaderMetaDataService.php     |  22 +-
 Configuration/TCA/Overrides/pages.php         | 283 ++++++------------
 .../TCA/tx_sgnews_domain_model_author.php     |   3 -
 Upgrade.md                                    |   1 +
 composer.json                                 |   3 +-
 9 files changed, 117 insertions(+), 259 deletions(-)

diff --git a/Classes/Controller/ListByCategoryController.php b/Classes/Controller/ListByCategoryController.php
index 417baec..5dfd1ab 100644
--- a/Classes/Controller/ListByCategoryController.php
+++ b/Classes/Controller/ListByCategoryController.php
@@ -204,24 +204,6 @@ class ListByCategoryController extends AbstractController {
 			/** @var News $newsEntry */
 			$data = $this->newsService->getMetaDataForNews($newsEntry, $categories[$newsEntry->getPid()]);
 			$newsMetaData[] = $data;
-
-			if (!$headerSet) {
-				if (!version_compare(ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-					if (isset($newsMetaData['imageObject'])) {
-						HeaderMetaDataService::addOgImageObjectToHeader(
-							$newsMetaData['imageObject']
-								? $newsMetaData['imageObject']->getOriginalResource()
-								: NULL
-						);
-					} elseif (isset($newsMetaData['teaserImageObject'])) {
-						HeaderMetaDataService::addOgImageObjectToHeader(
-							$newsMetaData['teaserImageObject']
-								? $newsMetaData['teaserImageObject']->getOriginalResource()
-								: NULL
-						);
-					}
-				}
-			}
 		}
 
 		$this->view->assign('numberOfPages', $numberOfPages);
diff --git a/Classes/Controller/NewsByAuthorController.php b/Classes/Controller/NewsByAuthorController.php
index 2e39164..1f3db13 100644
--- a/Classes/Controller/NewsByAuthorController.php
+++ b/Classes/Controller/NewsByAuthorController.php
@@ -85,21 +85,14 @@ class NewsByAuthorController extends AbstractController {
 				continue;
 			}
 
-			if (version_compare(ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-				$headTagService = GeneralUtility::makeInstance(
-					HeadTagService::class,
-					TRUE,
-					$author->getName(),
-					$author->getDescription(),
-					'&tx_sgnews_newsbyauthor[authorId]=' . $author->getUid()
-				);
-				$headTagService->execute();
-			} else {
-				$GLOBALS['TSFE']->page['titlebyextension'] = $author->getName();
-				$GLOBALS['TSFE']->page['description'] = \strip_tags(\substr($author->getDescription(), 0, 200));
-				$GLOBALS['TSFE']->page['extensionArgumentsForCanonicalAndHrefLang'] =
-					'&tx_sgnews_newsbyauthor[authorId]=' . $author->getUid();
-			}
+			$headTagService = GeneralUtility::makeInstance(
+				HeadTagService::class,
+				TRUE,
+				$author->getName(),
+				$author->getDescription(),
+				'&tx_sgnews_newsbyauthor[authorId]=' . $author->getUid()
+			);
+			$headTagService->execute();
 
 			$authors[] = $author;
 		}
diff --git a/Classes/Controller/OverviewController.php b/Classes/Controller/OverviewController.php
index e8ccc77..dbd008f 100644
--- a/Classes/Controller/OverviewController.php
+++ b/Classes/Controller/OverviewController.php
@@ -388,13 +388,6 @@ class OverviewController extends AbstractController {
 			$highlightedNewsMetaData = $this->newsService->getMetaDataForNews($highlightedNews, $category);
 		}
 
-		if (!version_compare(ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-			if ($highlightedNewsMetaData['image']) {
-				HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['image']);
-			} elseif ($highlightedNewsMetaData['teaserImage']) {
-				HeaderMetaDataService::addOgImageToHeader($highlightedNewsMetaData['teaserImage']);
-			}
-		}
 	}
 
 	/**
diff --git a/Classes/Controller/SingleViewController.php b/Classes/Controller/SingleViewController.php
index d05abdf..d7cd957 100644
--- a/Classes/Controller/SingleViewController.php
+++ b/Classes/Controller/SingleViewController.php
@@ -98,21 +98,7 @@ class SingleViewController extends AbstractController {
 		}
 
 		$newsMetaData = $this->newsService->getMetaDataForNews($news, $newsCategory);
-		if (!version_compare(ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-			if (isset($newsMetaData['imageObject'])) {
-				HeaderMetaDataService::addOgImageObjectToHeader(
-					$newsMetaData['imageObject']
-						? $newsMetaData['imageObject']->getOriginalResource()
-						: NULL
-				);
-			} elseif (isset($newsMetaData['teaserImageObject'])) {
-				HeaderMetaDataService::addOgImageObjectToHeader(
-					$newsMetaData['teaserImageObject']
-						? $newsMetaData['teaserImageObject']->getOriginalResource()
-						: NULL
-				);
-			}
-		}
+
 
 		$previousNews = $this->newsRepository->findPreviousNewsEntryFromCurrentNews($news, $this->settings['sortBy'])
 			->getFirst();
diff --git a/Classes/Service/HeaderMetaDataService.php b/Classes/Service/HeaderMetaDataService.php
index 8eb4508..14a4237 100644
--- a/Classes/Service/HeaderMetaDataService.php
+++ b/Classes/Service/HeaderMetaDataService.php
@@ -73,18 +73,14 @@ class HeaderMetaDataService {
 			return;
 		}
 
-		if (version_compare(ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-			$headTagService = GeneralUtility::makeInstance(
-				HeadTagService::class,
-				FALSE,
-				'',
-				'',
-				'&tx_sgnews_pagebrowser[currentPage]=' . $currentPage
-			);
-			$headTagService->execute();
-		} else {
-			$GLOBALS['TSFE']->page['extensionArgumentsForCanonicalAndHrefLang'] =
-				'&tx_sgnews_pagebrowser[currentPage]=' . $currentPage;
-		}
+		$headTagService = GeneralUtility::makeInstance(
+			HeadTagService::class,
+			FALSE,
+			'',
+			'',
+			'&tx_sgnews_pagebrowser[currentPage]=' . $currentPage
+		);
+		$headTagService->execute();
+
 	}
 }
diff --git a/Configuration/TCA/Overrides/pages.php b/Configuration/TCA/Overrides/pages.php
index db49047..7215a3e 100644
--- a/Configuration/TCA/Overrides/pages.php
+++ b/Configuration/TCA/Overrides/pages.php
@@ -56,121 +56,68 @@ foreach (
 	];
 }
 
-if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-	$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::NEWS_DOKTYPE] = [
-		'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
-			--palette--;;standard,
-			--palette--;;titleDescriptionAndHighlightFlag,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.editorial;editorialWithNewsAuthor,
-			tx_sgnews_content_from_another_page, tx_sgnews_related_news, tx_sgnews_tags,
-		--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.seo,
-				--palette--;;seo,
-				--palette--;;robots,
-				--palette--;;canonical,
-				--palette--;;sitemap,
-		--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.socialmedia,
-			--palette--;;opengraph,
-			--palette--;;twittercards,
-		--div--;' . $localLangDbPath . 'pages.tabs.images,
-			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
-			--palette--;;media,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
-			--palette--;;language
-		'
-	];
-} else {
-	$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::NEWS_DOKTYPE] = [
-		'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
-			--palette--;;standard,
-			--palette--;;titleDescriptionAndHighlightFlag,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.editorial;editorialWithNewsAuthor,
-			tx_sgnews_content_from_another_page, tx_sgnews_related_news, tx_sgnews_tags,
-		--div--;' . $localLangDbPath . 'pages.tabs.images,
-			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
-			--palette--;;media,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
-			tx_projectbase_devnullrobots_flags,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
-			tx_projectbase_seo_titletag,tx_projectbase_seo_canonicaltag,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
-			--palette--;;language
-		'
-	];
-}
-if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-	$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::CATEGORY_DOKTYPE] = [
-		'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
-			--palette--;;standard,
-			title, slug, tx_projectbase_path_segment, tx_projectbase_excludefromsluggeneration, tx_realurl_pathsegment, tx_realurl_exclude,
-		--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.seo,
-				--palette--;;seo,
-				--palette--;;robots,
-				--palette--;;canonical,
-				--palette--;;sitemap,
-		--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.socialmedia,
-			--palette--;;opengraph,
-			--palette--;;twittercards,
-		--div--;' . $localLangDbPath . 'pages.tabs.images,
-			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
-			--palette--;;media,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
-			seo_title,canonical_link, ' . (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('yoast_seo') || \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('seo') ? '':'description,') . '
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
-			--palette--;;language
-		'
-	];
-} else {
-	$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::CATEGORY_DOKTYPE] = [
-		'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
-			--palette--;;standard,
-			title, slug, tx_projectbase_path_segment, tx_projectbase_excludefromsluggeneration, tx_realurl_pathsegment, tx_realurl_exclude,
-		--div--;' . $localLangDbPath . 'pages.tabs.images,
-			tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
-			--palette--;;media,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
-			tx_projectbase_devnullrobots_flags,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
-			tx_projectbase_seo_titletag,tx_projectbase_seo_canonicaltag, ' . (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('yoast_seo') || \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('seo') ? '':'description,') . '
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
-			--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
-		--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
-			--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
-		--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
-			--palette--;;language
-		'
-	];
-}
+$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::NEWS_DOKTYPE] = [
+	'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
+		--palette--;;standard,
+		--palette--;;titleDescriptionAndHighlightFlag,
+		--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.editorial;editorialWithNewsAuthor,
+		tx_sgnews_content_from_another_page, tx_sgnews_related_news, tx_sgnews_tags,
+	--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.seo,
+			--palette--;;seo,
+			--palette--;;robots,
+			--palette--;;canonical,
+			--palette--;;sitemap,
+	--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.socialmedia,
+		--palette--;;opengraph,
+		--palette--;;twittercards,
+	--div--;' . $localLangDbPath . 'pages.tabs.images,
+		tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
+		--palette--;;media,
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
+	--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
+		--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
+		--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
+	--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
+		--palette--;;language
+	'
+];
+
+$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::CATEGORY_DOKTYPE] = [
+	'showitem' => '--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:general,
+		--palette--;;standard,
+		title, slug, tx_projectbase_path_segment, tx_projectbase_excludefromsluggeneration, tx_realurl_pathsegment, tx_realurl_exclude,
+	--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.seo,
+			--palette--;;seo,
+			--palette--;;robots,
+			--palette--;;canonical,
+			--palette--;;sitemap,
+	--div--;LLL:EXT:seo/Resources/Private/Language/locallang_tca.xlf:pages.tabs.socialmedia,
+		--palette--;;opengraph,
+		--palette--;;twittercards,
+	--div--;' . $localLangDbPath . 'pages.tabs.images,
+		tx_sgnews_teaser2_image, tx_sgnews_teaser1_image,
+		--palette--;;media,
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.metadata,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.abstract;abstract,
+		seo_title,canonical_link, ' . (\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('yoast_seo') || \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::isLoaded('seo') ? '':'description,') . '
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.appearance,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.layout;layout,
+	--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:access,
+		--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.visibility;visibility,
+		--palette--;LLL:EXT:core/Resources/Private/Language/locallang_tca.xlf:pages.palettes.access;access,
+	--div--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.tabs.behaviour,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.caching;caching,
+		--palette--;LLL:EXT:frontend/Resources/Private/Language/locallang_tca.xlf:pages.palettes.miscellaneous;miscellaneous,
+	--div--;LLL:EXT:core/Resources/Private/Language/Form/locallang_tabs.xlf:language,
+		--palette--;;language
+	'
+];
 
 \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::addTCAcolumns(
 	'pages',
@@ -178,13 +125,7 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten
 		'tx_sgnews_teaser1_image' => [
 			'exclude' => TRUE,
 			'label' => $localLangDbPath . 'pages.tx_sgnews_teaser1_image',
-			'description' => (
-				version_compare(
-				\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'),
-				'5.0.0',
-				'>='
-			)
-			) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : NULL,
+			'description' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description',
 			'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
 				'tx_sgnews_teaser1_image',
 				[
@@ -234,13 +175,7 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten
 		'tx_sgnews_teaser2_image' => [
 			'exclude' => TRUE,
 			'label' => $localLangDbPath . 'pages.tx_sgnews_teaser2_image',
-			'description' => (
-				version_compare(
-				\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'),
-				'5.0.0',
-				'>='
-			)
-			) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : NULL,
+			'description' => 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description',
 			'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
 				'tx_sgnews_teaser2_image',
 				[
@@ -482,64 +417,38 @@ $GLOBALS['TCA']['pages']['palettes']['editorialWithNewsAuthor'] = [
 ];
 
 foreach ($GLOBALS['TCA']['pages']['columns'] as $languageExcludeField => $_) {
-	if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'), '5.0.0', '>=')) {
-		$fieldNames = [
-			'doktype',
-			'title',
-			'subtitle',
-			'description',
-			'slug',
-			'tx_projectbase_path_segment',
-			'tx_projectbase_excludefromsluggeneration',
-			'tx_sgnews_location',
-			'tx_sgnews_teaser1_image',
-			'tx_sgnews_teaser2_image',
-			'tx_sgnews_tags',
-			'abstract',
-			'seo_title',
-			'canonical_link',
-			'hidden',
-			'sys_language_uid',
-			'tx_languagevisibility_visibility',
-			'lastUpdated',
-			'tx_sgnews_date_end',
-			'tx_sgnews_highlighted',
-			'tx_sgnews_never_highlighted',
-			'tx_sgnews_comments_enable',
-			'og_title',
-			'og_description',
-			'og_image',
-			'twitter_title',
-			'twitter_description',
-			'twitter_image',
-			'twitter_card'
-		];
-	} else {
-		$fieldNames = [
-			'doktype',
-			'title',
-			'subtitle',
-			'description',
-			'slug',
-			'tx_projectbase_path_segment',
-			'tx_projectbase_excludefromsluggeneration',
-			'tx_sgnews_location',
-			'tx_sgnews_teaser1_image',
-			'tx_sgnews_teaser2_image',
-			'tx_sgnews_tags',
-			'abstract',
-			'tx_projectbase_seo_titletag',
-			'tx_projectbase_seo_canonicaltag',
-			'hidden',
-			'sys_language_uid',
-			'tx_languagevisibility_visibility',
-			'lastUpdated',
-			'tx_sgnews_date_end',
-			'tx_sgnews_highlighted',
-			'tx_sgnews_never_highlighted',
-			'tx_sgnews_comments_enable'
-		];
-	}
+	$fieldNames = [
+		'doktype',
+		'title',
+		'subtitle',
+		'description',
+		'slug',
+		'tx_projectbase_path_segment',
+		'tx_projectbase_excludefromsluggeneration',
+		'tx_sgnews_location',
+		'tx_sgnews_teaser1_image',
+		'tx_sgnews_teaser2_image',
+		'tx_sgnews_tags',
+		'abstract',
+		'seo_title',
+		'canonical_link',
+		'hidden',
+		'sys_language_uid',
+		'tx_languagevisibility_visibility',
+		'lastUpdated',
+		'tx_sgnews_date_end',
+		'tx_sgnews_highlighted',
+		'tx_sgnews_never_highlighted',
+		'tx_sgnews_comments_enable',
+		'og_title',
+		'og_description',
+		'og_image',
+		'twitter_title',
+		'twitter_description',
+		'twitter_image',
+		'twitter_card'
+	];
+
 	if (!in_array($languageExcludeField, $fieldNames)) {
 		$GLOBALS['TCA']['pages']['types'][\SGalinski\SgNews\Utility\BackendNewsUtility::NEWS_DOKTYPE]['columnsOverrides'][$languageExcludeField]['l10n_mode'] = 'exclude';
 	}
diff --git a/Configuration/TCA/tx_sgnews_domain_model_author.php b/Configuration/TCA/tx_sgnews_domain_model_author.php
index 8bec90e..173e05f 100644
--- a/Configuration/TCA/tx_sgnews_domain_model_author.php
+++ b/Configuration/TCA/tx_sgnews_domain_model_author.php
@@ -192,8 +192,5 @@ $configuration = [
 		],
 	]
 ];
-if (version_compare(\TYPO3\CMS\Core\Utility\VersionNumberUtility::getCurrentTypo3Version(), '10.3.0', '<')) {
-	$configuration['interface']['showRecordFieldList'] = 'sys_language_uid, l10n_parent, l10n_diffsource, hidden, crdate, name, email, description, website, image, path_segment';
-}
 
 return $configuration;
diff --git a/Upgrade.md b/Upgrade.md
index d79f9ec..89ad5fc 100644
--- a/Upgrade.md
+++ b/Upgrade.md
@@ -2,6 +2,7 @@
 
 - Dropped TYPO3 9 support
 - Dropped php 7.3 support
+- Dropped sg_seo < 5.0 support
 - enableAutomaticRelatedNews defaults now to 1 instead of 0
 
 ## Upgrade from ```9.5.x``` to ```9.6.x```
diff --git a/composer.json b/composer.json
index 8a99161..7dbf943 100644
--- a/composer.json
+++ b/composer.json
@@ -16,7 +16,8 @@
         }
     ],
     "require": {
-        "typo3/cms-core": "^10.4.0 || ^11.5.0"
+        "typo3/cms-core": "^10.4.0 || ^11.5.0",
+        "sgalinski/sg-seo": ">=5.0.0"
     },
     "suggest": {
         "sgalinski/sg-ajax": "Required for the like feature",
-- 
GitLab