mirror of
https://github.com/SkillDisplay/TYPO3ContentElements.git
synced 2024-12-22 22:36:09 +01:00
8e46c143ce
Resolves: #11
41 lines
1 KiB
PHP
41 lines
1 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace SkillDisplay\SkilldisplayContent;
|
|
|
|
use SkillDisplay\PHPToolKit\Entity\Campaign;
|
|
use TYPO3\CMS\Backend\Utility\BackendUtility;
|
|
|
|
class TcaEnhancer
|
|
{
|
|
/**
|
|
* @var CampaignsFactory
|
|
*/
|
|
private $campaignsFactory;
|
|
|
|
public function __construct(
|
|
CampaignsFactory $campaignsFactory
|
|
) {
|
|
$this->campaignsFactory = $campaignsFactory;
|
|
}
|
|
|
|
public function getCampaignsForTCA(array &$params): void
|
|
{
|
|
$params['items'] = [
|
|
['', 0],
|
|
];
|
|
|
|
$pid = BackendUtility::getTSconfig_pidValue('tt_content', $params['row']['uid'], $params['row']['pid']);
|
|
if ($pid > 0) {
|
|
$campaigns = $this->campaignsFactory->createFromPageUid($pid)->getForUser();
|
|
/** @var Campaign $campaign */
|
|
foreach ($campaigns as $campaign) {
|
|
$params['items'][] = [
|
|
$campaign->getTitle(),
|
|
$campaign->getId(),
|
|
];
|
|
}
|
|
}
|
|
}
|
|
}
|