Skip to content
Snippets Groups Projects
Commit 42311d5c authored by Matthias Adrowski's avatar Matthias Adrowski
Browse files

[TASK] ECS run

parent f8ea489d
No related branches found
No related tags found
1 merge request!38Feature upgrade to typo3 11
Showing
with 150 additions and 105 deletions
...@@ -76,7 +76,8 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -76,7 +76,8 @@ class PreviewRenderer implements PreviewRendererInterface {
// Get available plugin settings and their values from flexform // Get available plugin settings and their values from flexform
$pluginConfiguration = GeneralUtility::xml2array( $pluginConfiguration = GeneralUtility::xml2array(
$row['pi_flexform'], 'T3DataStructure' $row['pi_flexform'],
'T3DataStructure'
)['data']['main']['lDEF']; )['data']['main']['lDEF'];
$templateData = [ $templateData = [
...@@ -101,7 +102,8 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -101,7 +102,8 @@ class PreviewRenderer implements PreviewRendererInterface {
// Get available plugin settings and their values from flexform // Get available plugin settings and their values from flexform
$pluginConfiguration = GeneralUtility::xml2array( $pluginConfiguration = GeneralUtility::xml2array(
$row['pi_flexform'], 'T3DataStructure' $row['pi_flexform'],
'T3DataStructure'
)['data']['main']['lDEF']; )['data']['main']['lDEF'];
$categories = $pluginConfiguration['settings.categories']['vDEF']; $categories = $pluginConfiguration['settings.categories']['vDEF'];
...@@ -109,10 +111,12 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -109,10 +111,12 @@ class PreviewRenderer implements PreviewRendererInterface {
$templateData = [ $templateData = [
'limit' => $pluginConfiguration['settings.limit']['vDEF'], 'limit' => $pluginConfiguration['settings.limit']['vDEF'],
'categories' => is_string($categories) ? $this->addFieldContentsToRecordIdList( 'categories' => is_string($categories) ? $this->addFieldContentsToRecordIdList(
'pages', $categories 'pages',
$categories
) : '', ) : '',
'tags' => is_string($tags) ? $this->addFieldContentsToRecordIdList( 'tags' => is_string($tags) ? $this->addFieldContentsToRecordIdList(
'sys_category', $tags 'sys_category',
$tags
) : '', ) : '',
'starttime' => $pluginConfiguration['settings.starttime']['vDEF'], 'starttime' => $pluginConfiguration['settings.starttime']['vDEF'],
'endtime' => $pluginConfiguration['settings.endtime']['vDEF'], 'endtime' => $pluginConfiguration['settings.endtime']['vDEF'],
...@@ -130,7 +134,8 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -130,7 +134,8 @@ class PreviewRenderer implements PreviewRendererInterface {
// Get available plugin settings and their values from flexform // Get available plugin settings and their values from flexform
$pluginConfiguration = GeneralUtility::xml2array( $pluginConfiguration = GeneralUtility::xml2array(
$row['pi_flexform'], 'T3DataStructure' $row['pi_flexform'],
'T3DataStructure'
)['data']['main']['lDEF']; )['data']['main']['lDEF'];
$categories = $pluginConfiguration['settings.categories']['vDEF']; $categories = $pluginConfiguration['settings.categories']['vDEF'];
...@@ -138,7 +143,8 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -138,7 +143,8 @@ class PreviewRenderer implements PreviewRendererInterface {
$templateData = [ $templateData = [
'newsLimitPerPage' => $pluginConfiguration['settings.newsLimitPerPage']['vDEF'], 'newsLimitPerPage' => $pluginConfiguration['settings.newsLimitPerPage']['vDEF'],
'categories' => is_string($categories) ? $this->addFieldContentsToRecordIdList( 'categories' => is_string($categories) ? $this->addFieldContentsToRecordIdList(
'pages', $categories 'pages',
$categories
) : '', ) : '',
'tags' => is_string($tags) ? $this->addFieldContentsToRecordIdList('sys_category', $tags) : '', 'tags' => is_string($tags) ? $this->addFieldContentsToRecordIdList('sys_category', $tags) : '',
'starttime' => $pluginConfiguration['settings.starttime']['vDEF'], 'starttime' => $pluginConfiguration['settings.starttime']['vDEF'],
...@@ -158,26 +164,33 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -158,26 +164,33 @@ class PreviewRenderer implements PreviewRendererInterface {
// Get available plugin settings and their values from flexform // Get available plugin settings and their values from flexform
$pluginConfiguration = GeneralUtility::xml2array( $pluginConfiguration = GeneralUtility::xml2array(
$row['pi_flexform'], 'T3DataStructure' $row['pi_flexform'],
'T3DataStructure'
)['data']['main']['lDEF']; )['data']['main']['lDEF'];
$newsAuthors = $pluginConfiguration['settings.newsAuthors']['vDEF']; $newsAuthors = $pluginConfiguration['settings.newsAuthors']['vDEF'];
$templateData = [ $templateData = [
'showDetails' => $pluginConfiguration['settings.showDetails']['vDEF'], 'showDetails' => $pluginConfiguration['settings.showDetails']['vDEF'],
'newsAuthors' => is_string($newsAuthors) ? $this->addFieldContentsToRecordIdList( 'newsAuthors' => is_string($newsAuthors) ? $this->addFieldContentsToRecordIdList(
'tx_sgnews_domain_model_author',$newsAuthors,'name' 'tx_sgnews_domain_model_author',
$newsAuthors,
'name'
) : '' ) : ''
]; ];
// Not using addFieldContentsToRecordIdList to avoid repetitive imploding and exploding. // Not using addFieldContentsToRecordIdList to avoid repetitive imploding and exploding.
$excludedNewsIds = GeneralUtility::intExplode( $excludedNewsIds = GeneralUtility::intExplode(
',', $pluginConfiguration['settings.excludedNews']['vDEF'], TRUE ',',
$pluginConfiguration['settings.excludedNews']['vDEF'],
TRUE
); );
$excludedNewsListWithTitles = []; $excludedNewsListWithTitles = [];
foreach ($excludedNewsIds as $excludedNewsId) { foreach ($excludedNewsIds as $excludedNewsId) {
$excludedNewsListWithTitles[] = BackendUtility::getRecord( $excludedNewsListWithTitles[] = BackendUtility::getRecord(
'pages', $excludedNewsId, 'title' 'pages',
)['title'] . ' [' . $excludedNewsId . ']'; $excludedNewsId,
'title'
)['title'] . ' [' . $excludedNewsId . ']';
} }
$templateData['excludedNews'] = $excludedNewsListWithTitles; $templateData['excludedNews'] = $excludedNewsListWithTitles;
...@@ -251,8 +264,10 @@ class PreviewRenderer implements PreviewRendererInterface { ...@@ -251,8 +264,10 @@ class PreviewRenderer implements PreviewRendererInterface {
foreach ($recordIdsArray as $recordId) { foreach ($recordIdsArray as $recordId) {
$recordsWithTitlesArray[] = BackendUtility::getRecord( $recordsWithTitlesArray[] = BackendUtility::getRecord(
$table, $recordId, $field $table,
)[$field] . ' [' . $recordId . ']'; $recordId,
$field
)[$field] . ' [' . $recordId . ']';
} }
return implode(', ', $recordsWithTitlesArray); return implode(', ', $recordsWithTitlesArray);
} }
......
...@@ -36,7 +36,6 @@ use TYPO3\CMS\Extbase\Configuration\Exception\InvalidConfigurationTypeException; ...@@ -36,7 +36,6 @@ use TYPO3\CMS\Extbase\Configuration\Exception\InvalidConfigurationTypeException;
* This service provides helper function for dealing with plugin configuration * This service provides helper function for dealing with plugin configuration
*/ */
class ConfigurationService implements SingletonInterface { class ConfigurationService implements SingletonInterface {
/** /**
* @var array * @var array
*/ */
......
...@@ -61,7 +61,10 @@ class ImageService implements SingletonInterface { ...@@ -61,7 +61,10 @@ class ImageService implements SingletonInterface {
* @throws \InvalidArgumentException * @throws \InvalidArgumentException
*/ */
public function cropFirstMediaImage( public function cropFirstMediaImage(
FileReference $image, array $coordinates, $path = 'typo3temp/sg_news/', $prefix = '' FileReference $image,
array $coordinates,
$path = 'typo3temp/sg_news/',
$prefix = ''
): string { ): string {
$originalResource = $image->getOriginalResource(); $originalResource = $image->getOriginalResource();
$extension = strtolower($originalResource->getExtension()); $extension = strtolower($originalResource->getExtension());
......
...@@ -35,7 +35,6 @@ use TYPO3\CMS\Extbase\Object\ObjectManager; ...@@ -35,7 +35,6 @@ use TYPO3\CMS\Extbase\Object\ObjectManager;
* This class contains methods for usage within the TCA forms. * This class contains methods for usage within the TCA forms.
*/ */
class TcaProvider implements SingletonInterface { class TcaProvider implements SingletonInterface {
/** /**
* @var \TYPO3\CMS\Extbase\Object\ObjectManagerInterface * @var \TYPO3\CMS\Extbase\Object\ObjectManagerInterface
*/ */
...@@ -84,8 +83,8 @@ class TcaProvider implements SingletonInterface { ...@@ -84,8 +83,8 @@ class TcaProvider implements SingletonInterface {
$workspaceOriginalId = (int) $row['t3ver_oid']; $workspaceOriginalId = (int) $row['t3ver_oid'];
if ($workspaceOriginalId > 0) { if ($workspaceOriginalId > 0) {
$row = $queryBuilder->where( $row = $queryBuilder->where(
$queryBuilder->expr()->eq('uid', $queryBuilder->createNamedParameter($workspaceOriginalId, \PDO::PARAM_INT)) $queryBuilder->expr()->eq('uid', $queryBuilder->createNamedParameter($workspaceOriginalId, \PDO::PARAM_INT))
)->execute()->fetch(); )->execute()->fetch();
} }
// only articles // only articles
......
...@@ -153,7 +153,7 @@ class MigrateSchedulerTasks implements UpgradeWizardInterface { ...@@ -153,7 +153,7 @@ class MigrateSchedulerTasks implements UpgradeWizardInterface {
*/ */
protected function cleanArrayKeys(array $array) { protected function cleanArrayKeys(array $array) {
$newArray = []; $newArray = [];
foreach($array as $key => $value) { foreach ($array as $key => $value) {
$newArray[str_replace("\0", '', $key)] = $value; $newArray[str_replace("\0", '', $key)] = $value;
} }
return $newArray; return $newArray;
......
...@@ -70,8 +70,7 @@ class AddAdditionalMailRecipients implements SingletonInterface { ...@@ -70,8 +70,7 @@ class AddAdditionalMailRecipients implements SingletonInterface {
return $authorEmail; return $authorEmail;
} }
public function setContentObjectRenderer(\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer $cObj): void public function setContentObjectRenderer(\TYPO3\CMS\Frontend\ContentObject\ContentObjectRenderer $cObj): void {
{
$this->cObj = $cObj; $this->cObj = $cObj;
} }
} }
...@@ -50,7 +50,6 @@ use TYPO3\CMS\Extbase\Utility\LocalizationUtility; ...@@ -50,7 +50,6 @@ use TYPO3\CMS\Extbase\Utility\LocalizationUtility;
* Class Utility * Class Utility
*/ */
class BackendNewsUtility { class BackendNewsUtility {
/** /**
* @var int The category page doktype * @var int The category page doktype
*/ */
...@@ -92,7 +91,12 @@ class BackendNewsUtility { ...@@ -92,7 +91,12 @@ class BackendNewsUtility {
$andWhere = ' AND sys_language_uid IN (0,-1)'; $andWhere = ' AND sys_language_uid IN (0,-1)';
/** @var array $rootOptionRows */ /** @var array $rootOptionRows */
$rootOptionRows = self::getRecordsByField( $rootOptionRows = self::getRecordsByField(
'pages', 'is_siteroot', 1, $andWhere, '', 'sorting' 'pages',
'is_siteroot',
1,
$andWhere,
'',
'sorting'
); );
if ($rootOptionRows) { if ($rootOptionRows) {
foreach ($rootOptionRows as $row) { foreach ($rootOptionRows as $row) {
...@@ -106,7 +110,8 @@ class BackendNewsUtility { ...@@ -106,7 +110,8 @@ class BackendNewsUtility {
foreach ($categories as $categoryUid => $categoryTitle) { foreach ($categories as $categoryUid => $categoryTitle) {
if ((int) $pageInfo['uid'] !== $categoryUid) { if ((int) $pageInfo['uid'] !== $categoryUid) {
$categoryPageInfo = BackendUtility::readPageAccess( $categoryPageInfo = BackendUtility::readPageAccess(
$categoryUid, $GLOBALS['BE_USER']->getPagePermsClause(1) $categoryUid,
$GLOBALS['BE_USER']->getPagePermsClause(1)
); );
if ($categoryPageInfo) { if ($categoryPageInfo) {
$options[] = self::getOptionPageInfo($categoryPageInfo); $options[] = self::getOptionPageInfo($categoryPageInfo);
...@@ -154,7 +159,10 @@ class BackendNewsUtility { ...@@ -154,7 +159,10 @@ class BackendNewsUtility {
// get all pageids below the given siteroot // get all pageids below the given siteroot
$queryGenerator = GeneralUtility::makeInstance(QueryGenerator::class); $queryGenerator = GeneralUtility::makeInstance(QueryGenerator::class);
$childPids = $queryGenerator->getTreeList( $childPids = $queryGenerator->getTreeList(
$siteRootUid, PHP_INT_MAX, 0, $GLOBALS['BE_USER']->getPagePermsClause(1) $siteRootUid,
PHP_INT_MAX,
0,
$GLOBALS['BE_USER']->getPagePermsClause(1)
); );
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('pages'); $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable('pages');
...@@ -171,7 +179,8 @@ class BackendNewsUtility { ...@@ -171,7 +179,8 @@ class BackendNewsUtility {
$categories = []; $categories = [];
foreach ($result as $page) { foreach ($result as $page) {
$categoryPageInfo = BackendUtility::readPageAccess( $categoryPageInfo = BackendUtility::readPageAccess(
(int) $page['uid'], $GLOBALS['BE_USER']->getPagePermsClause(1) (int) $page['uid'],
$GLOBALS['BE_USER']->getPagePermsClause(1)
); );
if ($categoryPageInfo) { if ($categoryPageInfo) {
$categories[(int) $page['uid']] = $page['title']; $categories[(int) $page['uid']] = $page['title'];
...@@ -317,7 +326,8 @@ class BackendNewsUtility { ...@@ -317,7 +326,8 @@ class BackendNewsUtility {
$filterCategories = $filters['categories']; $filterCategories = $filters['categories'];
foreach ($filterCategories as $categoryUid) { foreach ($filterCategories as $categoryUid) {
$categoryPageInfo = BackendUtility::readPageAccess( $categoryPageInfo = BackendUtility::readPageAccess(
(int) $categoryUid, $GLOBALS['BE_USER']->getPagePermsClause(1) (int) $categoryUid,
$GLOBALS['BE_USER']->getPagePermsClause(1)
); );
if ($categoryPageInfo) { if ($categoryPageInfo) {
$categories[] = (int) $categoryUid; $categories[] = (int) $categoryUid;
...@@ -333,9 +343,14 @@ class BackendNewsUtility { ...@@ -333,9 +343,14 @@ class BackendNewsUtility {
$allowedUids = []; $allowedUids = [];
foreach ($categories as $categoryUid) { foreach ($categories as $categoryUid) {
$allowedUidsTemp = GeneralUtility::intExplode( $allowedUidsTemp = GeneralUtility::intExplode(
',', $queryGenerator->getTreeList( ',',
$categoryUid, 1, 0, $GLOBALS['BE_USER']->getPagePermsClause(1) $queryGenerator->getTreeList(
), TRUE $categoryUid,
1,
0,
$GLOBALS['BE_USER']->getPagePermsClause(1)
),
TRUE
); );
$allowedUids = array_unique(array_merge($allowedUids, $allowedUidsTemp)); $allowedUids = array_unique(array_merge($allowedUids, $allowedUidsTemp));
} }
...@@ -348,13 +363,14 @@ class BackendNewsUtility { ...@@ -348,13 +363,14 @@ class BackendNewsUtility {
$deletedRestriction = GeneralUtility::makeInstance(DeletedRestriction::class); $deletedRestriction = GeneralUtility::makeInstance(DeletedRestriction::class);
$queryBuilder = $connectionPool->getQueryBuilderForTable('pages'); $queryBuilder = $connectionPool->getQueryBuilderForTable('pages');
$queryBuilder->getRestrictions()->removeAll()->add($deletedRestriction); $queryBuilder->getRestrictions()->removeAll()->add($deletedRestriction);
$queryBuilder->select('p.uid', $queryBuilder->select(
'p.pid', 'p.uid',
'p.hidden', 'p.pid',
'p.sorting', 'p.hidden',
'p.doktype', 'p.sorting',
'p.title' 'p.doktype',
)->from('pages', 'p') 'p.title'
)->from('pages', 'p')
->where( ->where(
$queryBuilder->expr()->andX( $queryBuilder->expr()->andX(
$queryBuilder->expr()->in('p.uid', $queryBuilder->createNamedParameter($allowedUids, Connection::PARAM_INT_ARRAY)), $queryBuilder->expr()->in('p.uid', $queryBuilder->createNamedParameter($allowedUids, Connection::PARAM_INT_ARRAY)),
...@@ -364,7 +380,10 @@ class BackendNewsUtility { ...@@ -364,7 +380,10 @@ class BackendNewsUtility {
->groupBy('p.uid') ->groupBy('p.uid')
->orderBy('p.sorting'); ->orderBy('p.sorting');
if ($languageUid) { if ($languageUid) {
$queryBuilder->leftJoin('p', 'pages', 'translation', $queryBuilder->leftJoin(
'p',
'pages',
'translation',
$queryBuilder->expr()->andX( $queryBuilder->expr()->andX(
$queryBuilder->expr()->eq('translation.l10n_parent', 'p.uid'), $queryBuilder->expr()->eq('translation.l10n_parent', 'p.uid'),
$queryBuilder->expr()->eq('translation.sys_language_uid', $queryBuilder->createNamedParameter($languageUid, \PDO::PARAM_INT)) $queryBuilder->expr()->eq('translation.sys_language_uid', $queryBuilder->createNamedParameter($languageUid, \PDO::PARAM_INT))
...@@ -373,7 +392,10 @@ class BackendNewsUtility { ...@@ -373,7 +392,10 @@ class BackendNewsUtility {
} }
if (isset($filters['tags']) && is_array($filters['tags']) && count($filters['tags'])) { if (isset($filters['tags']) && is_array($filters['tags']) && count($filters['tags'])) {
$queryBuilder->innerJoin('p', 'sys_category_record_mm', 'tag', $queryBuilder->innerJoin(
'p',
'sys_category_record_mm',
'tag',
$queryBuilder->expr()->andX( $queryBuilder->expr()->andX(
$queryBuilder->expr()->eq('tag.tablenames', $queryBuilder->createNamedParameter('pages')), $queryBuilder->expr()->eq('tag.tablenames', $queryBuilder->createNamedParameter('pages')),
$queryBuilder->expr()->eq('tag.fieldname', $queryBuilder->createNamedParameter('tx_sgnews_tags')), $queryBuilder->expr()->eq('tag.fieldname', $queryBuilder->createNamedParameter('tx_sgnews_tags')),
...@@ -484,12 +506,19 @@ class BackendNewsUtility { ...@@ -484,12 +506,19 @@ class BackendNewsUtility {
* @return mixed Multidimensional array with selected records (if any is selected) * @return mixed Multidimensional array with selected records (if any is selected)
*/ */
public static function getRecordsByField( public static function getRecordsByField(
$theTable, $theField, $theValue, $whereClause = '', $groupBy = '', $orderBy = '', $limit = '', $theTable,
$theField,
$theValue,
$whereClause = '',
$groupBy = '',
$orderBy = '',
$limit = '',
$useDeleteClause = TRUE $useDeleteClause = TRUE
) { ) {
if (is_array($GLOBALS['TCA'][$theTable])) { if (is_array($GLOBALS['TCA'][$theTable])) {
$queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable($theTable); $queryBuilder = GeneralUtility::makeInstance(ConnectionPool::class)->getQueryBuilderForTable($theTable);
$queryBuilder->getRestrictions()->removeAll()->add(GeneralUtility::makeInstance(BackendWorkspaceRestriction::class));; $queryBuilder->getRestrictions()->removeAll()->add(GeneralUtility::makeInstance(BackendWorkspaceRestriction::class));
;
if ($useDeleteClause) { if ($useDeleteClause) {
$queryBuilder->getRestrictions() $queryBuilder->getRestrictions()
->add(GeneralUtility::makeInstance(DeletedRestriction::class)); ->add(GeneralUtility::makeInstance(DeletedRestriction::class));
......
...@@ -32,7 +32,6 @@ use TYPO3\CMS\Fluid\ViewHelpers\Be\AbstractBackendViewHelper; ...@@ -32,7 +32,6 @@ use TYPO3\CMS\Fluid\ViewHelpers\Be\AbstractBackendViewHelper;
* Abstract view helper * Abstract view helper
*/ */
class AbstractViewHelper extends AbstractBackendViewHelper { class AbstractViewHelper extends AbstractBackendViewHelper {
/** /**
* @var boolean * @var boolean
*/ */
......
...@@ -39,7 +39,6 @@ use TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList; ...@@ -39,7 +39,6 @@ use TYPO3\CMS\Recordlist\RecordList\DatabaseRecordList;
* Class ControlViewHelper * Class ControlViewHelper
**/ **/
class ControlViewHelper extends AbstractViewHelper { class ControlViewHelper extends AbstractViewHelper {
/** /**
* Initialize the ViewHelper arguments * Initialize the ViewHelper arguments
*/ */
......
...@@ -35,7 +35,6 @@ use TYPO3\CMS\Core\Utility\GeneralUtility; ...@@ -35,7 +35,6 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
* Class IconViewHelper * Class IconViewHelper
**/ **/
class IconViewHelper extends AbstractViewHelper { class IconViewHelper extends AbstractViewHelper {
/** /**
* Initialize the ViewHelper arguments * Initialize the ViewHelper arguments
*/ */
...@@ -58,13 +57,13 @@ class IconViewHelper extends AbstractViewHelper { ...@@ -58,13 +57,13 @@ class IconViewHelper extends AbstractViewHelper {
$size = trim($this->arguments['size']); $size = trim($this->arguments['size']);
$overlayId = $this->arguments['overlayId']; $overlayId = $this->arguments['overlayId'];
switch ($size) { switch ($size) {
case 'small' : case 'small':
$size = Icon::SIZE_SMALL; $size = Icon::SIZE_SMALL;
break; break;
case 'large' : case 'large':
$size = Icon::SIZE_LARGE; $size = Icon::SIZE_LARGE;
break; break;
default : default:
$size = Icon::SIZE_DEFAULT; $size = Icon::SIZE_DEFAULT;
break; break;
} }
......
...@@ -78,45 +78,42 @@ use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractTagBasedViewHelper; ...@@ -78,45 +78,42 @@ use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractTagBasedViewHelper;
* *
* <be:link.newRecord table="a_table" returnUrl="{f:be.uri(route: 'web_MyextensionList')}" pid="17"> * <be:link.newRecord table="a_table" returnUrl="{f:be.uri(route: 'web_MyextensionList')}" pid="17">
*/ */
class NewRecordViewHelper extends AbstractTagBasedViewHelper class NewRecordViewHelper extends AbstractTagBasedViewHelper {
{ /**
/** * @var string
* @var string */
*/ protected $tagName = 'a';
protected $tagName = 'a';
public function initializeArguments() public function initializeArguments() {
{ parent::initializeArguments();
parent::initializeArguments(); $this->registerUniversalTagAttributes();
$this->registerUniversalTagAttributes(); $this->registerArgument('uid', 'int', 'uid < 0 will insert the record after the given uid', FALSE);
$this->registerArgument('uid', 'int', 'uid < 0 will insert the record after the given uid', false); $this->registerArgument('pid', 'int', 'the page id where the record will be created', FALSE);
$this->registerArgument('pid', 'int', 'the page id where the record will be created', false); $this->registerArgument('table', 'string', 'target database table', TRUE);
$this->registerArgument('table', 'string', 'target database table', true); $this->registerArgument('type', 'string', 'The type of the news', TRUE);
$this->registerArgument('type', 'string', 'The type of the news', true); $this->registerArgument('returnUrl', 'string', 'return to this URL after closing the edit dialog', FALSE, '');
$this->registerArgument('returnUrl', 'string', 'return to this URL after closing the edit dialog', false, ''); }
}
/** /**
* @return string * @return string
* @throws \TYPO3\CMS\Backend\Routing\Exception\RouteNotFoundException * @throws \TYPO3\CMS\Backend\Routing\Exception\RouteNotFoundException
*/ */
public function render(): string public function render(): string {
{ if ($this->arguments['uid'] && $this->arguments['pid']) {
if ($this->arguments['uid'] && $this->arguments['pid']) { throw new \InvalidArgumentException('Can\'t handle both uid and pid for new records', 1526129969);
throw new \InvalidArgumentException('Can\'t handle both uid and pid for new records', 1526129969); }
} if (isset($this->arguments['uid']) && $this->arguments['uid'] >= 0) {
if (isset($this->arguments['uid']) && $this->arguments['uid'] >= 0) { throw new \InvalidArgumentException('Uid must be negative integer, ' . $this->arguments['uid'] . ' given', 1526134901);
throw new \InvalidArgumentException('Uid must be negative integer, ' . $this->arguments['uid'] . ' given', 1526134901); }
}
if (empty($this->arguments['returnUrl'])) { if (empty($this->arguments['returnUrl'])) {
$this->arguments['returnUrl'] = GeneralUtility::getIndpEnv('REQUEST_URI'); $this->arguments['returnUrl'] = GeneralUtility::getIndpEnv('REQUEST_URI');
} }
$params = [ $params = [
'edit' => [$this->arguments['table'] => [$this->arguments['uid'] ?? $this->arguments['pid'] ?? 0 => 'new']], 'edit' => [$this->arguments['table'] => [$this->arguments['uid'] ?? $this->arguments['pid'] ?? 0 => 'new']],
'returnUrl' => $this->arguments['returnUrl'] 'returnUrl' => $this->arguments['returnUrl']
]; ];
if ($this->arguments['table'] === 'pages' && in_array($this->arguments['type'], ['news', 'category'], TRUE)) { if ($this->arguments['table'] === 'pages' && in_array($this->arguments['type'], ['news', 'category'], TRUE)) {
$params['overrideVals'] = [ $params['overrideVals'] = [
'pages' => [ 'pages' => [
...@@ -125,11 +122,11 @@ class NewRecordViewHelper extends AbstractTagBasedViewHelper ...@@ -125,11 +122,11 @@ class NewRecordViewHelper extends AbstractTagBasedViewHelper
]; ];
} }
$uriBuilder = GeneralUtility::makeInstance(UriBuilder::class); $uriBuilder = GeneralUtility::makeInstance(UriBuilder::class);
$uri = (string)$uriBuilder->buildUriFromRoute('record_edit', $params); $uri = (string)$uriBuilder->buildUriFromRoute('record_edit', $params);
$this->tag->addAttribute('href', $uri); $this->tag->addAttribute('href', $uri);
$this->tag->setContent($this->renderChildren()); $this->tag->setContent($this->renderChildren());
$this->tag->forceClosingTag(true); $this->tag->forceClosingTag(TRUE);
return $this->tag->render(); return $this->tag->render();
} }
} }
...@@ -33,7 +33,6 @@ use SGalinski\SgNews\ViewHelpers\AbstractViewHelper; ...@@ -33,7 +33,6 @@ use SGalinski\SgNews\ViewHelpers\AbstractViewHelper;
* Class EditOnClickViewHelper * Class EditOnClickViewHelper
**/ **/
class NewsItemTagsViewHelper extends AbstractViewHelper { class NewsItemTagsViewHelper extends AbstractViewHelper {
/** /**
* Initialize the ViewHelper arguments * Initialize the ViewHelper arguments
*/ */
......
...@@ -36,7 +36,6 @@ use TYPO3\CMS\Core\Utility\GeneralUtility; ...@@ -36,7 +36,6 @@ use TYPO3\CMS\Core\Utility\GeneralUtility;
* Class IconViewHelper * Class IconViewHelper
**/ **/
class RecordIconViewHelper extends AbstractViewHelper { class RecordIconViewHelper extends AbstractViewHelper {
/** /**
* Initialize the ViewHelper arguments * Initialize the ViewHelper arguments
*/ */
......
...@@ -40,7 +40,6 @@ use TYPO3\CMS\Extbase\Utility\LocalizationUtility; ...@@ -40,7 +40,6 @@ use TYPO3\CMS\Extbase\Utility\LocalizationUtility;
* Class EditOnClickViewHelper * Class EditOnClickViewHelper
**/ **/
class TranslationLinksViewHelper extends AbstractViewHelper { class TranslationLinksViewHelper extends AbstractViewHelper {
/** /**
* Register the ViewHelp0er arguments * Register the ViewHelp0er arguments
*/ */
...@@ -115,13 +114,14 @@ class TranslationLinksViewHelper extends AbstractViewHelper { ...@@ -115,13 +114,14 @@ class TranslationLinksViewHelper extends AbstractViewHelper {
'returnUrl' => (string) $returnUrl 'returnUrl' => (string) $returnUrl
]); ]);
$out .= ' <a href="' . $link . '" title="'. $language['title'] . ' [' . $editLabel . ']" >' $out .= ' <a href="' . $link . '" title="' . $language['title'] . ' [' . $editLabel . ']" >'
. $iconFactory->getIcon($language['flag'], Icon::SIZE_SMALL)->render() . $iconFactory->getIcon($language['flag'], Icon::SIZE_SMALL)->render()
. '</a>'; . '</a>';
} else { } else {
$out .= ' <a href="' $out .= ' <a href="'
. BackendUtility::getLinkToDataHandlerAction( . BackendUtility::getLinkToDataHandlerAction(
sprintf($translationParameters, $languageUid), $returnUrl sprintf($translationParameters, $languageUid),
$returnUrl
) )
. '" title="' . $language['title'] . ' [' . $newLabel . ']" >' . '" title="' . $language['title'] . ' [' . $newLabel . ']" >'
. $iconFactory->getIcon( . $iconFactory->getIcon(
......
...@@ -33,7 +33,6 @@ use TYPO3\CMS\Fluid\ViewHelpers\Be\Widget\Controller\PaginateController as Fluid ...@@ -33,7 +33,6 @@ use TYPO3\CMS\Fluid\ViewHelpers\Be\Widget\Controller\PaginateController as Fluid
* Class PaginateController * Class PaginateController
*/ */
class PaginateController extends FluidPaginateController { class PaginateController extends FluidPaginateController {
/** /**
* @var mixed * @var mixed
*/ */
...@@ -79,7 +78,8 @@ class PaginateController extends FluidPaginateController { ...@@ -79,7 +78,8 @@ class PaginateController extends FluidPaginateController {
} }
} }
$this->view->assign( $this->view->assign(
'contentArguments', [ 'contentArguments',
[
$this->widgetConfiguration['as'] => $modifiedObjects $this->widgetConfiguration['as'] => $modifiedObjects
] ]
); );
......
...@@ -36,7 +36,6 @@ use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper; ...@@ -36,7 +36,6 @@ use TYPO3Fluid\Fluid\Core\ViewHelper\AbstractViewHelper;
* <sg:getReadingTime content="" /> * <sg:getReadingTime content="" />
*/ */
class GetReadingTimeViewHelper extends AbstractViewHelper { class GetReadingTimeViewHelper extends AbstractViewHelper {
/** /**
* Register the ViewHelper arguments * Register the ViewHelper arguments
*/ */
......
...@@ -58,7 +58,9 @@ class PageRenderer extends \TYPO3\CMS\Core\Page\PageRenderer { ...@@ -58,7 +58,9 @@ class PageRenderer extends \TYPO3\CMS\Core\Page\PageRenderer {
if (is_array($this->headerDataRegex)) { if (is_array($this->headerDataRegex)) {
foreach ($this->headerDataRegex as $regex) { foreach ($this->headerDataRegex as $regex) {
$this->headerData = preg_replace( $this->headerData = preg_replace(
'/' . $regex['pattern'] . '/is', $regex['replacement'], $this->headerData '/' . $regex['pattern'] . '/is',
$regex['replacement'],
$this->headerData
); );
} }
} }
...@@ -72,7 +74,9 @@ class PageRenderer extends \TYPO3\CMS\Core\Page\PageRenderer { ...@@ -72,7 +74,9 @@ class PageRenderer extends \TYPO3\CMS\Core\Page\PageRenderer {
* @param string $substituteHash * @param string $substituteHash
* @return string * @return string
*/ */
public function renderJavaScriptAndCssForProcessingOfUncachedContentObjects($cachedPageContent, $substituteHash public function renderJavaScriptAndCssForProcessingOfUncachedContentObjects(
$cachedPageContent,
$substituteHash
): string { ): string {
$this->executeHeaderRegularExpressions(); $this->executeHeaderRegularExpressions();
return parent::renderJavaScriptAndCssForProcessingOfUncachedContentObjects($cachedPageContent, $substituteHash); return parent::renderJavaScriptAndCssForProcessingOfUncachedContentObjects($cachedPageContent, $substituteHash);
......
<?php <?php
return [ return [
'sg_news:migrateNews' => [ 'sg_news:migrateNews' => [
'class' => \SGalinski\SgNews\Command\MigrateNewsCommandController::class 'class' => \SGalinski\SgNews\Command\MigrateNewsCommandController::class
......
<?php <?php
declare(strict_types=1); declare(strict_types=1);
// if you need to change this, keep in mind the changes need to be done in // if you need to change this, keep in mind the changes need to be done in
......
...@@ -174,11 +174,13 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten ...@@ -174,11 +174,13 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten
'tx_sgnews_teaser1_image' => [ 'tx_sgnews_teaser1_image' => [
'exclude' => TRUE, 'exclude' => TRUE,
'label' => $localLangDbPath . 'pages.tx_sgnews_teaser1_image', 'label' => $localLangDbPath . 'pages.tx_sgnews_teaser1_image',
'description' => (version_compare( 'description' => (
version_compare(
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'), \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'),
'5.0.0', '5.0.0',
'>=') '>='
) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : null, )
) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : NULL,
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig( 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_sgnews_teaser1_image', 'tx_sgnews_teaser1_image',
[ [
...@@ -228,11 +230,13 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten ...@@ -228,11 +230,13 @@ if (version_compare(\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExten
'tx_sgnews_teaser2_image' => [ 'tx_sgnews_teaser2_image' => [
'exclude' => TRUE, 'exclude' => TRUE,
'label' => $localLangDbPath . 'pages.tx_sgnews_teaser2_image', 'label' => $localLangDbPath . 'pages.tx_sgnews_teaser2_image',
'description' => (version_compare( 'description' => (
version_compare(
\TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'), \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getExtensionVersion('sg_seo'),
'5.0.0', '5.0.0',
'>=') '>='
) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : null, )
) ? 'LLL:EXT:sg_news/Resources/Private/Language/locallang_db.xlf:teaser_description' : NULL,
'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig( 'config' => \TYPO3\CMS\Core\Utility\ExtensionManagementUtility::getFileFieldTCAConfig(
'tx_sgnews_teaser2_image', 'tx_sgnews_teaser2_image',
[ [
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment