From 042ba22758e75996496566c7a3462107c06e69b2 Mon Sep 17 00:00:00 2001 From: Oliver Bartsch <bo@cedev.de> Date: Wed, 23 Sep 2020 18:32:56 +0200 Subject: [PATCH] [!!!][TASK] Remove deprecated EXT:form constants and functions This change removes following public class constants: * EmailFinisher::FORMAT_PLAINTEXT * EmailFinisher::FORMAT_HTML Following internal functions are removed: * FormEditorController::migrateTranslationFileOptions() * FormEditorController::migrateEmailFormatOption() There were also some deprecated internal functions which got already removed / changed in #90728. Resolves: #92389 Releases: master Change-Id: I241f363d03d9e58bb5e4788a7c1c7262f962f585 Reviewed-on: https://review.typo3.org/c/Packages/TYPO3.CMS/+/65842 Tested-by: TYPO3com <noreply@typo3.com> Tested-by: Benni Mack <benni@typo3.org> Tested-by: Daniel Goerz <daniel.goerz@posteo.de> Reviewed-by: Oliver Klee <typo3-coding@oliverklee.de> Reviewed-by: Benni Mack <benni@typo3.org> Reviewed-by: Daniel Goerz <daniel.goerz@posteo.de> --- ...g-91473-DeprecatedFunctionalityRemoved.rst | 2 + .../Controller/FormEditorController.php | 78 ------------------- .../Domain/Finishers/EmailFinisher.php | 3 - .../Php/ClassConstantMatcher.php | 2 + 4 files changed, 4 insertions(+), 81 deletions(-) diff --git a/typo3/sysext/core/Documentation/Changelog/master/Breaking-91473-DeprecatedFunctionalityRemoved.rst b/typo3/sysext/core/Documentation/Changelog/master/Breaking-91473-DeprecatedFunctionalityRemoved.rst index 34406b8adefe..e9c0279eaf97 100644 --- a/typo3/sysext/core/Documentation/Changelog/master/Breaking-91473-DeprecatedFunctionalityRemoved.rst +++ b/typo3/sysext/core/Documentation/Changelog/master/Breaking-91473-DeprecatedFunctionalityRemoved.rst @@ -236,6 +236,8 @@ The following class constants have been dropped: - :php:`\TYPO3\CMS\Core\Resource\ResourceStorageInterface::SIGNAL_SanitizeFileName` - :php:`\TYPO3\CMS\Core\Resource\Service\FileProcessingService::SIGNAL_PreFileProcess` - :php:`\TYPO3\CMS\Core\Resource\Service\FileProcessingService::SIGNAL_PostFileProcess` +- :php:`\TYPO3\CMS\Form\Domain\Finishers\EmailFinisher::FORMAT_PLAINTEXT` +- :php:`\TYPO3\CMS\Form\Domain\Finishers\EmailFinisher::FORMAT_HTML` - :php:`\TYPO3\CMS\Workspaces\Service\GridDataService::SIGNAL_GenerateDataArray_BeforeCaching` - :php:`\TYPO3\CMS\Workspaces\Service\GridDataService::SIGNAL_GenerateDataArray_PostProcesss` - :php:`\TYPO3\CMS\Workspaces\Service\GridDataService::SIGNAL_GetDataArray_PostProcesss` diff --git a/typo3/sysext/form/Classes/Controller/FormEditorController.php b/typo3/sysext/form/Classes/Controller/FormEditorController.php index d56a8c22df5a..3533226fe7ca 100644 --- a/typo3/sysext/form/Classes/Controller/FormEditorController.php +++ b/typo3/sysext/form/Classes/Controller/FormEditorController.php @@ -27,17 +27,13 @@ use TYPO3\CMS\Core\Page\PageRenderer; use TYPO3\CMS\Core\Site\Entity\Site; use TYPO3\CMS\Core\Site\Entity\SiteLanguage; use TYPO3\CMS\Core\Utility\ArrayUtility; -use TYPO3\CMS\Core\Utility\Exception\MissingArrayPathException; use TYPO3\CMS\Core\Utility\GeneralUtility; use TYPO3\CMS\Extbase\Mvc\View\JsonView; use TYPO3\CMS\Fluid\View\TemplateView; -use TYPO3\CMS\Form\Domain\Configuration\ArrayProcessing\ArrayProcessing; -use TYPO3\CMS\Form\Domain\Configuration\ArrayProcessing\ArrayProcessor; use TYPO3\CMS\Form\Domain\Configuration\ConfigurationService; use TYPO3\CMS\Form\Domain\Configuration\FormDefinitionConversionService; use TYPO3\CMS\Form\Domain\Exception\RenderingException; use TYPO3\CMS\Form\Domain\Factory\ArrayFormFactory; -use TYPO3\CMS\Form\Domain\Finishers\EmailFinisher; use TYPO3\CMS\Form\Exception; use TYPO3\CMS\Form\Mvc\Persistence\Exception\PersistenceManagerException; use TYPO3\CMS\Form\Service\TranslationService; @@ -502,9 +498,7 @@ class FormEditorController extends AbstractBackendController } $formDefinition = $this->filterEmptyArrays($formDefinition); - $formDefinition = $this->migrateTranslationFileOptions($formDefinition); $formDefinition = $this->migrateEmailFinisherRecipients($formDefinition); - $formDefinition = $this->migrateEmailFormatOption($formDefinition); // @todo: replace with rte parsing $formDefinition = ArrayUtility::stripTagsFromValuesRecursive($formDefinition); @@ -635,51 +629,6 @@ class FormEditorController extends AbstractBackendController return $array; } - /** - * Migrate singular "translationFile" options to plural "translationFiles" - * - * @param array $formDefinition - * @return array - * @deprecated since v10 and will be removed in TYPO3 v11 - */ - protected function migrateTranslationFileOptions(array $formDefinition): array - { - GeneralUtility::makeInstance(ArrayProcessor::class, $formDefinition)->forEach( - GeneralUtility::makeInstance( - ArrayProcessing::class, - 'translationFile', - '((.+)\.translationFile)(?:\.|$)', - function ($key, $value, $matches) use (&$formDefinition) { - [, $singleOptionPath, $parentOptionPath] = $matches; - - try { - $translationFiles = ArrayUtility::getValueByPath($formDefinition, $singleOptionPath, '.'); - } catch (MissingArrayPathException $e) { - // Already migrated by a previous "translationFile.N" entry - return; - } - - if (is_string($translationFiles)) { - // 10 is usually used by EXT:form - $translationFiles = [20 => $translationFiles]; - } - - $formDefinition = ArrayUtility::setValueByPath( - $formDefinition, - sprintf('%s.translationFiles', $parentOptionPath), - $translationFiles, - '.' - ); - $formDefinition = ArrayUtility::removeByPath($formDefinition, $singleOptionPath, '.'); - - return $value; - } - ) - ); - - return $formDefinition; - } - /** * Migrate single recipient options to their list successors * @@ -728,33 +677,6 @@ class FormEditorController extends AbstractBackendController return $formDefinition; } - /** - * Migrate email "format" option to "addHtmlPart" - * - * @param array $formDefinition - * @return array - * @deprecated since v10 and will be removed in TYPO3 v11 - */ - protected function migrateEmailFormatOption(array $formDefinition): array - { - foreach ($formDefinition['finishers'] ?? [] as $i => $finisherConfiguration) { - if (!in_array($finisherConfiguration['identifier'], ['EmailToSender', 'EmailToReceiver'], true)) { - continue; - } - - $format = $finisherConfiguration['options']['format'] ?? null; - - if (!empty($format)) { - $finisherConfiguration['options']['addHtmlPart'] = empty($format) || $format !== EmailFinisher::FORMAT_PLAINTEXT; - } - - unset($finisherConfiguration['options']['format']); - $formDefinition['finishers'][$i] = $finisherConfiguration; - } - - return $formDefinition; - } - /** * @return FormDefinitionConversionService */ diff --git a/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php b/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php index eeee910f488c..1e0d81683605 100644 --- a/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php +++ b/typo3/sysext/form/Classes/Domain/Finishers/EmailFinisher.php @@ -59,9 +59,6 @@ use TYPO3\CMS\Form\ViewHelpers\RenderRenderableViewHelper; */ class EmailFinisher extends AbstractFinisher { - const FORMAT_PLAINTEXT = 'plaintext'; - const FORMAT_HTML = 'html'; - /** * @var array */ diff --git a/typo3/sysext/install/Configuration/ExtensionScanner/Php/ClassConstantMatcher.php b/typo3/sysext/install/Configuration/ExtensionScanner/Php/ClassConstantMatcher.php index 54315520067f..58dfae0f937b 100644 --- a/typo3/sysext/install/Configuration/ExtensionScanner/Php/ClassConstantMatcher.php +++ b/typo3/sysext/install/Configuration/ExtensionScanner/Php/ClassConstantMatcher.php @@ -186,11 +186,13 @@ return [ 'TYPO3\CMS\Form\Domain\Finishers\EmailFinisher::FORMAT_PLAINTEXT' => [ 'restFiles' => [ 'Deprecation-87200-EmailFinisherFormatContants.rst', + 'Breaking-91473-DeprecatedFunctionalityRemoved.rst' ], ], 'TYPO3\CMS\Form\Domain\Finishers\EmailFinisher::FORMAT_HTML' => [ 'restFiles' => [ 'Deprecation-87200-EmailFinisherFormatContants.rst', + 'Breaking-91473-DeprecatedFunctionalityRemoved.rst' ], ], 'TYPO3\CMS\Core\Resource\ResourceFactoryInterface::SIGNAL_PreProcessStorage' => [ -- GitLab