|
|
@@ -6,6 +6,7 @@ use FluidTYPO3\Vhs\Traits\TemplateVariableViewHelperTrait;
|
|
|
use FluidTYPO3\Vhs\ViewHelpers\Resource\Record\FalViewHelper;
|
|
|
use Opentalent\OtCore\Exception\ApiRequestException;
|
|
|
use Opentalent\OtCore\ViewHelpers\OtAbstractViewHelper;
|
|
|
+use Opentalent\OtCore\Website\OtWebsiteRepository;
|
|
|
use TYPO3\CMS\Core\Database\ConnectionPool;
|
|
|
use TYPO3\CMS\Core\Utility\GeneralUtility;
|
|
|
use TYPO3\CMS\Extbase\Service\ImageService;
|
|
|
@@ -28,6 +29,10 @@ class MetadataViewHelper extends OtAbstractViewHelper
|
|
|
{
|
|
|
use TemplateVariableViewHelperTrait;
|
|
|
|
|
|
+ public function __construct(
|
|
|
+ private readonly OtWebsiteRepository $otWebsiteRepository,
|
|
|
+ ) {}
|
|
|
+
|
|
|
/**
|
|
|
* >> Required to prevent typo3 to escape the html output
|
|
|
* @var boolean
|
|
|
@@ -111,8 +116,11 @@ class MetadataViewHelper extends OtAbstractViewHelper
|
|
|
$uri = $GLOBALS['TYPO3_REQUEST']->getUri();
|
|
|
$page = $GLOBALS['TSFE']->page;
|
|
|
|
|
|
+ $website = $this->otWebsiteRepository->getCurrentWebsiteFromFEGlobals();
|
|
|
+
|
|
|
// Forced values registered with https://viewhelpers.fluidtypo3.org/fluidtypo3/vhs/5.0.1/Variable/Register/Set.html
|
|
|
$registered = $GLOBALS["TSFE"]->register;
|
|
|
+ $forcedSiteName = ($registered['forceSocialWebsiteTitle'] ?? null);
|
|
|
$forcedTitle = ($registered['forceSocialTitle'] ?? null);
|
|
|
$forcedDescription = ($registered['forceSocialDescription'] ?? null);
|
|
|
$forcedImageUrl = ($registered['forceSocialImageUrl'] ?? '');
|
|
|
@@ -122,6 +130,13 @@ class MetadataViewHelper extends OtAbstractViewHelper
|
|
|
'domain' => $uri->getHost(),
|
|
|
];
|
|
|
|
|
|
+ // Determine OG website title
|
|
|
+ if ($forcedSiteName != null) {
|
|
|
+ $data['ogSiteName'] = $forcedTitle;
|
|
|
+ } else {
|
|
|
+ $data['ogSiteName'] = $website['organization_name'];
|
|
|
+ }
|
|
|
+
|
|
|
// Determine OG title
|
|
|
if ($forcedTitle != null) {
|
|
|
$data['ogPageTitle'] = $forcedTitle;
|