diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c3aca91..a2f9d0c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,7 +8,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - TYPO3: [ '11' , '12', '13' ] + TYPO3: [ '11' , '12', '13', '14' ] steps: - name: Checkout @@ -27,11 +27,15 @@ jobs: run: composer validate - name: Cache dependencies - uses: actions/cache@v1 + uses: actions/cache@v4 with: path: ~/.composer/cache key: dependencies-composer-${{ hashFiles('composer.json') }} + - name: Install composer dependencies TYPO3 14 + if: matrix.TYPO3 == '14' + run: | + composer install --no-progress --no-interaction - name: Install composer dependencies TYPO3 13 if: matrix.TYPO3 == '13' run: | @@ -44,6 +48,9 @@ jobs: if: matrix.TYPO3 == '11' run: | composer require typo3/cms-core:^11.5 --no-progress --no-interaction --dev -W + - name: Phpstan 14 + if: matrix.TYPO3 == '14' + run: .Build/bin/phpstan analyze -c Build/phpstan.neon - name: Phpstan 13 if: matrix.TYPO3 == '13' run: .Build/bin/phpstan analyze -c Build/phpstan.neon diff --git a/Classes/Service/ListService.php b/Classes/Service/ListService.php index f6ad462..19cd016 100644 --- a/Classes/Service/ListService.php +++ b/Classes/Service/ListService.php @@ -50,7 +50,7 @@ public function resolveListitems(array $row, string $field = 'tx_listelements_li '', $row['uid'], $table, - BackendUtility::getTcaFieldConfiguration($table, $field) + $GLOBALS['TCA'][$table]['columns'][$field]['config'] ); $results = $relationHandler->getFromDB(); $results = $results[self::TABLE] ?? []; @@ -109,7 +109,7 @@ public function resolveItemsForFrontend(int $uid, string $table = 'tt_content', '', $uid, $table, - BackendUtility::getTcaFieldConfiguration($table, $field) + $GLOBALS['TCA'][$table]['columns'][$field]['config'] ); $results = $relationHandler->getFromDB(); $results = $results[self::TABLE] ?? []; diff --git a/Configuration/TCA/Overrides/tx_listelements_item.php b/Configuration/TCA/Overrides/tx_listelements_item.php index 1b6c2b6..cb63d68 100644 --- a/Configuration/TCA/Overrides/tx_listelements_item.php +++ b/Configuration/TCA/Overrides/tx_listelements_item.php @@ -9,27 +9,27 @@ --palette--;;basicoverlayPalette, --palette--;;filePalette', ], - \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT => [ + (enum_exists(\TYPO3\CMS\Core\Resource\FileType::class) ? \TYPO3\CMS\Core\Resource\FileType::TEXT->value : \TYPO3\CMS\Core\Resource\File::FILETYPE_TEXT) => [ 'showitem' => ' --palette--;;imageoverlayPalette, --palette--;;filePalette', ], - \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE => [ + (enum_exists(\TYPO3\CMS\Core\Resource\FileType::class) ? \TYPO3\CMS\Core\Resource\FileType::IMAGE->value : \TYPO3\CMS\Core\Resource\File::FILETYPE_IMAGE) => [ 'showitem' => ' --palette--;;imageoverlayPalette, --palette--;;filePalette', ], - \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO => [ + (enum_exists(\TYPO3\CMS\Core\Resource\FileType::class) ? \TYPO3\CMS\Core\Resource\FileType::AUDIO->value : \TYPO3\CMS\Core\Resource\File::FILETYPE_AUDIO) => [ 'showitem' => ' --palette--;;audioOverlayPalette, --palette--;;filePalette', ], - \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO => [ + (enum_exists(\TYPO3\CMS\Core\Resource\FileType::class) ? \TYPO3\CMS\Core\Resource\FileType::VIDEO->value : \TYPO3\CMS\Core\Resource\File::FILETYPE_VIDEO) => [ 'showitem' => ' --palette--;;videoOverlayPalette, --palette--;;filePalette', ], - \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION => [ + (enum_exists(\TYPO3\CMS\Core\Resource\FileType::class) ? \TYPO3\CMS\Core\Resource\FileType::APPLICATION->value : \TYPO3\CMS\Core\Resource\File::FILETYPE_APPLICATION) => [ 'showitem' => ' --palette--;;basicoverlayPalette, --palette--;;filePalette', diff --git a/composer.json b/composer.json index 0caedde..a30926e 100644 --- a/composer.json +++ b/composer.json @@ -7,8 +7,8 @@ ], "require": { "php": "^7.4 || ~8.0", - "typo3/cms-backend": "^11.5 || ^12.4 || ^13.1", - "typo3/cms-fluid-styled-content": "^11.5 || ^12.4 || ^13.1" + "typo3/cms-backend": "^11.5 || ^12.4 || ^13.1 || ^14.0", + "typo3/cms-fluid-styled-content": "^11.5 || ^12.4 || ^13.1 || ^14.0" }, "extra": { "typo3/cms": { @@ -22,8 +22,8 @@ "prefer-stable": true, "require-dev": { "typo3/testing-framework": "^7.0 || ^8.0", - "typo3/cms-frontend": "^11.5 || ^12.4 || ^13.1", - "typo3/cms-workspaces": "^11.5 || ^12.4 || ^13.1", + "typo3/cms-frontend": "^11.5 || ^12.4 || ^13.1 || ^14.0", + "typo3/cms-workspaces": "^11.5 || ^12.4 || ^13.1 || ^14.0", "saschaegerer/phpstan-typo3": "^1.8", "typo3/coding-standards": "^0.5.5", "b13/listelements-example": "*" diff --git a/ext_emconf.php b/ext_emconf.php index 9b8cf65..bce4571 100644 --- a/ext_emconf.php +++ b/ext_emconf.php @@ -7,11 +7,11 @@ 'version' => '1.3.2', 'state' => 'stable', 'author' => 'David Steeb, b13 GmbH', - 'author_email' => 'typo3@b13.cpom', + 'author_email' => 'typo3@b13.com', 'author_company' => 'b13 GmbH, Stuttgart', 'constraints' => [ 'depends' => [ - 'typo3' => '11.5.0-13.99.99', + 'typo3' => '11.5.0-14.99.99', ], ], ];