[!!!][TASK] Remove deprecated code from DataHandler 65/45365/7
authorWouter Wolters <typo3@wouterwolters.nl>
Fri, 18 Dec 2015 20:01:16 +0000 (21:01 +0100)
committerMorton Jonuschat <m.jonuschat@mojocode.de>
Thu, 31 Dec 2015 12:51:07 +0000 (13:51 +0100)
Resolves: #72385
Releases: master
Change-Id: Iee37e2ae9a8c74116795ad60983a9849738bb15d
Reviewed-on: https://review.typo3.org/45365
Reviewed-by: Benni Mack <benni@typo3.org>
Tested-by: Benni Mack <benni@typo3.org>
Reviewed-by: Morton Jonuschat <m.jonuschat@mojocode.de>
Tested-by: Morton Jonuschat <m.jonuschat@mojocode.de>
36 files changed:
typo3/sysext/backend/Classes/Controller/EditDocumentController.php
typo3/sysext/backend/Classes/Controller/FormInlineAjaxController.php
typo3/sysext/backend/Classes/Controller/PageLayoutController.php
typo3/sysext/backend/Classes/Controller/SimpleDataHandlerController.php
typo3/sysext/backend/Classes/Controller/Wizard/AddController.php
typo3/sysext/backend/Classes/Controller/Wizard/TableController.php
typo3/sysext/backend/Classes/History/RecordHistory.php
typo3/sysext/backend/Classes/Tree/Pagetree/Commands.php
typo3/sysext/beuser/Classes/Controller/PermissionAjaxController.php
typo3/sysext/core/Classes/Collection/AbstractRecordCollection.php
typo3/sysext/core/Classes/DataHandling/DataHandler.php
typo3/sysext/core/Classes/Database/ReferenceIndex.php
typo3/sysext/core/Classes/FrontendEditing/FrontendEditingController.php
typo3/sysext/core/Documentation/Changelog/master/Breaking-72385-RemovedDeprecatedCodeFromDataHandler.rst [new file with mode: 0644]
typo3/sysext/form/Classes/Domain/Repository/ContentRepository.php
typo3/sysext/impexp/Classes/ImportExport.php
typo3/sysext/indexed_search/Classes/Domain/Repository/AdministrationRepository.php
typo3/sysext/lowlevel/Classes/CleanFlexformCommand.php
typo3/sysext/lowlevel/Classes/DeletedRecordsCommand.php
typo3/sysext/lowlevel/Classes/OrphanRecordsCommand.php
typo3/sysext/lowlevel/Classes/VersionsCommand.php
typo3/sysext/recordlist/Classes/RecordList.php
typo3/sysext/scheduler/Classes/Controller/SchedulerModuleController.php
typo3/sysext/setup/Classes/Controller/SetupModuleController.php
typo3/sysext/sys_action/Classes/ActionTask.php
typo3/sysext/t3editor/Classes/Hook/TypoScriptTemplateInfoHook.php
typo3/sysext/tstemplate/Classes/Controller/TypoScriptTemplateConstantEditorModuleFunctionController.php
typo3/sysext/tstemplate/Classes/Controller/TypoScriptTemplateInformationModuleFunctionController.php
typo3/sysext/tstemplate/Classes/Controller/TypoScriptTemplateModuleController.php
typo3/sysext/tstemplate/Classes/Controller/TypoScriptTemplateObjectBrowserModuleFunctionController.php
typo3/sysext/version/Classes/Utility/WorkspacesUtility.php
typo3/sysext/wizard_crpages/Classes/Controller/CreatePagesWizardModuleFunctionController.php
typo3/sysext/wizard_sortpages/Classes/View/SortPagesWizardModuleFunction.php
typo3/sysext/workspaces/Classes/ExtDirect/MassActionHandler.php
typo3/sysext/workspaces/Classes/Hook/DataHandlerHook.php
typo3/sysext/workspaces/Classes/Service/AutoPublishService.php

index a332458..9276cd2 100644 (file)
@@ -523,7 +523,6 @@ class EditDocumentController extends AbstractModule
         // Only options related to $this->data submission are included here.
         /** @var $tce \TYPO3\CMS\Core\DataHandling\DataHandler */
         $tce = GeneralUtility::makeInstance(DataHandler::class);
-        $tce->stripslashes_values = false;
 
         if (!empty($control)) {
             $tce->setControl($control);
index 9575aa9..cdb3190 100644 (file)
@@ -386,7 +386,6 @@ class FormInlineAjaxController
 
             /** @var $tce DataHandler */
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = false;
             $tce->start(array(), $cmd);
             $tce->process_cmdmap();
 
index 2c299ba..1167122 100755 (executable)
@@ -480,7 +480,6 @@ class PageLayoutController
     {
         if ($this->clear_cache) {
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = false;
             $tce->start(array(), array());
             $tce->clear_cacheCmd($this->id);
         }
index 5fc63b6..8df8874 100644 (file)
@@ -143,7 +143,6 @@ class SimpleDataHandlerController
         $this->uPT = GeneralUtility::_GP('uPT');
         // Creating TCEmain object
         $this->tce = GeneralUtility::makeInstance(DataHandler::class);
-        $this->tce->stripslashes_values = 0;
         // Configuring based on user prefs.
         if ($beUser->uc['recursiveDelete']) {
             // TRUE if the delete Recursive flag is set.
index 5c62769..c7d1980 100644 (file)
@@ -199,7 +199,6 @@ class AddController extends AbstractWizardController
                 if (is_array($currentParentRow)) {
                     /** @var DataHandler $dataHandler */
                     $dataHandler = GeneralUtility::makeInstance(DataHandler::class);
-                    $dataHandler->stripslashes_values = false;
                     $data = array();
                     $recordId = $this->table . '_' . $this->id;
                     // Setting the new field data:
index 132b04c..a260a19 100644 (file)
@@ -294,7 +294,6 @@ class TableController extends AbstractWizardController
                 // Get DataHandler object:
                 /** @var DataHandler $dataHandler */
                 $dataHandler = GeneralUtility::makeInstance(DataHandler::class);
-                $dataHandler->stripslashes_values = false;
                 // Put content into the data array:
                 $data = array();
                 if ($this->P['flexFormPath']) {
index 4cf7d1e..2e6a9d6 100644 (file)
@@ -239,7 +239,6 @@ class RecordHistory
         // Writes the data:
         if ($cmdmapArray) {
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = 0;
             $tce->debug = 0;
             $tce->dontProcessTransformations = 1;
             $tce->start(array(), $cmdmapArray);
@@ -274,7 +273,6 @@ class RecordHistory
         $data = $this->removeFilefields($rollbackData[0], $data);
         // Writes the data:
         $tce = GeneralUtility::makeInstance(DataHandler::class);
-        $tce->stripslashes_values = 0;
         $tce->debug = 0;
         $tce->dontProcessTransformations = 1;
         $tce->start($data, array());
index 951d3dd..363a336 100644 (file)
@@ -205,7 +205,6 @@ class Commands
     {
         /** @var $tce \TYPO3\CMS\Core\DataHandling\DataHandler */
         $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-        $tce->stripslashes_values = 0;
         $tce->start($data, $cmd);
         $tce->copyTree = MathUtility::forceIntegerInRange($GLOBALS['BE_USER']->uc['copyLevels'], 0, 100);
         if (!empty($cmd)) {
index 6b6b81b..5e32f47 100755 (executable)
@@ -87,7 +87,6 @@ class PermissionAjaxController
             // Init TCE for execution of update
             /** @var $tce DataHandler */
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = false;
             // Determine the scripts to execute
             switch ($this->conf['action']) {
                 case 'show_change_owner_selector':
index 65f1f55..eefe9c6 100644 (file)
@@ -371,7 +371,6 @@ abstract class AbstractRecordCollection implements RecordCollectionInterface, Pe
         }
         /** @var \TYPO3\CMS\Core\DataHandling\DataHandler $tce */
         $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-        $tce->stripslashes_values = 0;
         $tce->start($data, array());
         $tce->process_datamap();
     }
index c97d625..2f048ec 100644 (file)
@@ -85,15 +85,6 @@ class DataHandler
     public $checkSimilar = true;
 
     /**
-     * If TRUE, incoming values in the data-array have their slashes stripped. ALWAYS SET THIS TO ZERO and supply an
-     * unescaped data array instead. This switch may totally disappear in future versions of this class!
-     *
-     * @var bool
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public $stripslashes_values = true;
-
-    /**
      * This will read the record after having updated or inserted it. If anything is not properly submitted an error
      * is written to the log. This feature consumes extra time by selecting records
      *
@@ -138,14 +129,6 @@ class DataHandler
     public $dontProcessTransformations = false;
 
     /**
-     * If set, .vDEFbase values are unset in flexforms.
-     *
-     * @var bool
-     * @deprecated since TYPO3 CMS 7, will be removed with TYPO3 CMS 8
-     */
-    public $clear_flexFormData_vDEFbase = false;
-
-    /**
      * TRUE: (traditional) Updates when record is saved. For flexforms, updates if change is made to the localized value.
      * FALSE: Will not update anything.
      * "FORCE_FFUPD" (string): Like TRUE, but will force update to the FlexForm Field
@@ -392,12 +375,6 @@ class DataHandler
     protected $excludedTablesAndFields = array();
 
     /**
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     * @var int
-     */
-    public $include_filefunctions;
-
-    /**
      * Data submitted from the form view, used to control behaviours,
      * e.g. this is used to activate/deactivate fields and thus store NULL values
      *
@@ -1174,7 +1151,6 @@ class DataHandler
 
                                 /** @var $tce DataHandler */
                                 $tce = GeneralUtility::makeInstance(__CLASS__);
-                                $tce->stripslashes_values = false;
                                 // Setting up command for creating a new version of the record:
                                 $cmd = array();
                                 $cmd[$table][$id]['version'] = array(
@@ -1471,18 +1447,6 @@ class DataHandler
                 continue;
             }
 
-            // Stripping slashes - will probably be removed the day $this->stripslashes_values is removed as an option...
-            // @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-            if ($this->stripslashes_values) {
-                GeneralUtility::deprecationLog(
-                    'The option stripslash_values is typically set to FALSE as data should be properly prepared before sending to DataHandler. Do not rely on DataHandler removing extra slashes. The option will be removed in TYPO3 CMS 8.'
-                );
-                if (is_array($fieldValue)) {
-                    GeneralUtility::stripSlashesOnArray($fieldValue);
-                } else {
-                    $fieldValue = stripslashes($fieldValue);
-                }
-            }
             switch ($field) {
                 case 'uid':
                 case 'pid':
@@ -1754,23 +1718,6 @@ class DataHandler
     /**
      * Evaluate "text" type values.
      *
-     * @param array $res The result array. The processed value (if any!) is set in the "value" key.
-     * @param string $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @param string $field Field name
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_text($res, $value, $tcaFieldConf, $PP, $field = '')
-    {
-        GeneralUtility::logDeprecatedFunction();
-        return $this->checkValueForText($value, $tcaFieldConf);
-    }
-
-    /**
-     * Evaluate "text" type values.
-     *
      * @param string $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
      * @return array $res The result array. The processed value (if any!) is set in the "value" key.
@@ -1793,24 +1740,6 @@ class DataHandler
     /**
      * Evaluate "input" type values.
      *
-     * @param array $res The result array. The processed value (if any!) is set in the "value" key.
-     * @param string $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @param string $field Field name
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_input($res, $value, $tcaFieldConf, $PP, $field = '')
-    {
-        GeneralUtility::logDeprecatedFunction();
-        list($table, $id, , , $realPid) = $PP;
-        return $this->checkValueForInput($value, $tcaFieldConf, $table, $id, $realPid, $field);
-    }
-
-    /**
-     * Evaluate "input" type values.
-     *
      * @param string $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
      * @param string $table Table name
@@ -1891,24 +1820,6 @@ class DataHandler
      * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
      * @param string $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @param string $field Field name
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_check($res, $value, $tcaFieldConf, $PP, $field = '')
-    {
-        GeneralUtility::logDeprecatedFunction();
-        list($table, $id, , , $realPid) = $PP;
-        return $this->checkValueForCheck($res, $value, $tcaFieldConf, $table, $id, $realPid, $field);
-    }
-
-    /**
-     * Evaluates 'check' type values.
-     *
-     * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
-     * @param string $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
      * @param string $table Table name
      * @param int $id UID of record
      * @param int $realPid The real PID value of the record. For updates, this is just the pid of the record. For new records this is the PID of the page where it is inserted. If $realPid is -1 it means that a new version of the record is being inserted.
@@ -1960,23 +1871,6 @@ class DataHandler
      * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
      * @param string $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_radio($res, $value, $tcaFieldConf, $PP)
-    {
-        GeneralUtility::logDeprecatedFunction();
-        // TODO find a way to get the field name; it should not be set in $recFID as this is only created for some record types, see checkValue()
-        return $this->checkValueForRadio($res, $value, $tcaFieldConf, $PP[0], $PP[1], $PP[4], '');
-    }
-
-    /**
-     * Evaluates 'radio' type values.
-     *
-     * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
-     * @param string $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
      * @param array $table The table of the record
      * @param int $id The id of the record
      * @param int $pid The pid of the record
@@ -2017,25 +1911,6 @@ class DataHandler
      * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
      * @param string $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @param array $uploadedFiles
-     * @param string $field Field name
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_group_select($res, $value, $tcaFieldConf, $PP, $uploadedFiles, $field)
-    {
-        GeneralUtility::logDeprecatedFunction();
-        list($table, $id, $curValue, $status, , $recFID) = $PP;
-        return $this->checkValueForGroupSelect($res, $value, $tcaFieldConf, $table, $id, $curValue, $status, $recFID, $uploadedFiles, $field);
-    }
-
-    /**
-     * Evaluates 'group' or 'select' type values.
-     *
-     * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
-     * @param string $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
      * @param string $table Table name
      * @param int $id UID of record
      * @param mixed $curValue Current value of the field
@@ -2168,7 +2043,6 @@ class DataHandler
      * @return array Modified value array
      *
      * @throws \RuntimeException
-     * @see checkValue_group_select()
      */
     public function checkValue_group_select_file($valueArray, $tcaFieldConf, $curValue, $uploadedFileArray, $status, $table, $id, $recFID)
     {
@@ -2191,7 +2065,6 @@ class DataHandler
             // Creating fileFunc object.
             if (!$this->fileFunc) {
                 $this->fileFunc = GeneralUtility::makeInstance(BasicFileUtility::class);
-                $this->include_filefunctions = 1;
             }
             // Setting permitted extensions.
             $all_files = array();
@@ -2445,25 +2318,6 @@ class DataHandler
      * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
      * @param string|array $value The value to set.
      * @param array $tcaFieldConf Field configuration from TCA
-     * @param array $PP Additional parameters in a numeric array: $table,$id,$curValue,$status,$realPid,$recFID
-     * @param array $uploadedFiles Uploaded files for the field
-     * @param string $field Field name
-     * @return array Modified $res array
-     * @deprecated since TYPO3 CMS 7, will be removed in TYPO3 CMS 8
-     */
-    public function checkValue_flex($res, $value, $tcaFieldConf, $PP, $uploadedFiles, $field)
-    {
-        GeneralUtility::logDeprecatedFunction();
-        list($table, $id, $curValue, $status, $realPid, $recFID, $tscPID) = $PP;
-        $this->checkValueForFlex($res, $value, $tcaFieldConf, $table, $id, $curValue, $status, $realPid, $recFID, $tscPID, $uploadedFiles, $field);
-    }
-
-    /**
-     * Evaluates 'flex' type values.
-     *
-     * @param array $res The result array. The processed value (if any!) is set in the 'value' key.
-     * @param string|array $value The value to set.
-     * @param array $tcaFieldConf Field configuration from TCA
      * @param string $table Table name
      * @param int $id UID of record
      * @param mixed $curValue Current value of the field
@@ -2489,10 +2343,6 @@ class DataHandler
             if (!is_array($currentValueArray)) {
                 $currentValueArray = array();
             }
-            if (isset($currentValueArray['meta']['currentLangId'])) {
-                // @deprecated call since TYPO3 7, will be removed with TYPO3 8
-                unset($currentValueArray['meta']['currentLangId']);
-            }
             // Remove all old meta for languages...
             // Evaluation of input values:
             $value['data'] = $this->checkValue_flex_procInData($value['data'], $currentValueArray['data'], $uploadedFiles['data'], $dataStructArray, array($table, $id, $curValue, $status, $realPid, $recFID, $tscPID));
@@ -3134,10 +2984,7 @@ class DataHandler
                     // Finally, check if new and old values are different (or no .vDEFbase value is found) and if so, we record the vDEF value for diff'ing.
                     // We do this after $dataValues has been updated since I expect that $dataValues_current holds evaluated values from database (so this must be the right value to compare with).
                     if (substr($vKey, -9) != '.vDEFbase') {
-                        // @deprecated: flexFormXMLincludeDiffBase is only enabled by ext:compatibility6 since TYPO3 CMS 7, vDEFbase can be unset / ignored with TYPO3 CMS 8
-                        if ($this->clear_flexFormData_vDEFbase) {
-                            $dataValues[$key][$vKey . '.vDEFbase'] = '';
-                        } elseif ($this->updateModeL10NdiffData && $GLOBALS['TYPO3_CONF_VARS']['BE']['flexFormXMLincludeDiffBase'] && $vKey !== 'vDEF' && ((string)$dataValues[$key][$vKey] !== (string)$dataValues_current[$key][$vKey] || !isset($dataValues_current[$key][$vKey . '.vDEFbase']) || $this->updateModeL10NdiffData === 'FORCE_FFUPD')) {
+                        if ($this->updateModeL10NdiffData && $GLOBALS['TYPO3_CONF_VARS']['BE']['flexFormXMLincludeDiffBase'] && $vKey !== 'vDEF' && ((string)$dataValues[$key][$vKey] !== (string)$dataValues_current[$key][$vKey] || !isset($dataValues_current[$key][$vKey . '.vDEFbase']) || $this->updateModeL10NdiffData === 'FORCE_FFUPD')) {
                             // Now, check if a vDEF value is submitted in the input data, if so we expect this has been processed prior to this operation (normally the case since those fields are higher in the form) and we can use that:
                             if (isset($dataValues[$key]['vDEF'])) {
                                 $diffValue = $dataValues[$key]['vDEF'];
@@ -4050,7 +3897,6 @@ class DataHandler
         // Creating fileFunc object.
         if (!$this->fileFunc) {
             $this->fileFunc = GeneralUtility::makeInstance(BasicFileUtility::class);
-            $this->include_filefunctions = 1;
         }
         // Select all RTEmagic files in the reference table from the table/ID
         $where = join(' AND ', array(
@@ -4792,7 +4638,6 @@ class DataHandler
         if (is_array($removeArray) && !empty($removeArray)) {
             /** @var DataHandler $tce */
             $tce = GeneralUtility::makeInstance(__CLASS__);
-            $tce->stripslashes_values = false;
             $tce->start(array(), $removeArray);
             $tce->process_cmdmap();
             unset($tce);
@@ -5170,7 +5015,6 @@ class DataHandler
                 );
                 /** @var DataHandler $dataHandler */
                 $dataHandler = GeneralUtility::makeInstance(__CLASS__);
-                $dataHandler->stripslashes_values = false;
                 $dataHandler->neverHideAtCopy = true;
                 $dataHandler->start(array(), $command);
                 $dataHandler->process_cmdmap();
@@ -5620,19 +5464,16 @@ class DataHandler
     /**
      * Returns an instance of DataHandler for handling local datamaps/cmdmaps
      *
-     * @param bool $stripslashesValues If TRUE, incoming values in the data-array have their slashes stripped.
-     * @param bool $dontProcessTransformations If set, then transformations are NOT performed on the input.
      * @return DataHandler
      */
-    protected function getLocalTCE($stripslashesValues = false, $dontProcessTransformations = true)
+    protected function getLocalTCE()
     {
         $copyTCE = GeneralUtility::makeInstance(__CLASS__);
-        $copyTCE->stripslashes_values = $stripslashesValues;
         $copyTCE->copyTree = $this->copyTree;
         // Copy forth the cached TSconfig
         $copyTCE->cachedTSconfig = $this->cachedTSconfig;
         // Transformations should NOT be carried out during copy
-        $copyTCE->dontProcessTransformations = $dontProcessTransformations;
+        $copyTCE->dontProcessTransformations = true;
         return $copyTCE;
     }
 
@@ -8070,10 +7911,6 @@ class DataHandler
      */
     public function newlog2($message, $table, $uid, $pid = null, $error = 0)
     {
-        if ($pid === false) {
-            GeneralUtility::deprecationLog('Setting the $pid parameter of DataHandler::newlog2 to FALSE is deprecated since TYPO3 CMS 7. Either provide an integer or NULL. FALSE will not be supported any more in TYPO3 CMS 8');
-            $pid = null;
-        }
         if (is_null($pid)) {
             $propArr = $this->getRecordProperties($table, $uid);
             $pid = $propArr['pid'];
index 9f8f70b..4d00744 100644 (file)
@@ -891,7 +891,6 @@ class ReferenceIndex
                     } else {
                         // Execute CMD array:
                         $dataHandler = GeneralUtility::makeInstance(DataHandler::class);
-                        $dataHandler->stripslashes_values = false;
                         $dataHandler->dontProcessTransformations = true;
                         $dataHandler->bypassWorkspaceRestrictions = true;
                         $dataHandler->bypassFileHandling = true;
index cbabba0..7b20abe 100755 (executable)
@@ -581,7 +581,6 @@ class FrontendEditingController
     {
         if (!isset($this->tce)) {
             $this->tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $this->tce->stripslashes_values = 0;
         }
     }
 }
diff --git a/typo3/sysext/core/Documentation/Changelog/master/Breaking-72385-RemovedDeprecatedCodeFromDataHandler.rst b/typo3/sysext/core/Documentation/Changelog/master/Breaking-72385-RemovedDeprecatedCodeFromDataHandler.rst
new file mode 100644 (file)
index 0000000..ef9d44f
--- /dev/null
@@ -0,0 +1,42 @@
+===========================================================
+Breaking: #72385 - Removed deprecated code from DataHandler
+===========================================================
+
+Description
+===========
+
+Removed deprecated code from DataHandler
+
+The following properties have been removed:
+
+``stripslashes_values``
+``clear_flexFormData_vDEFbase``
+``include_filefunctions``
+
+The following methods have been removed:
+
+``checkValue_text()``
+``checkValue_input()``
+``checkValue_check()``
+``checkValue_radio()``
+``checkValue_group_select()``
+``checkValue_flex()``
+
+Additionally, the method ``getLocalTCE()`` does not accept any parameter now anymore.
+
+Impact
+======
+
+Using one of these methods or properties will throw a fatal error.
+
+
+Affected Installations
+======================
+
+An extension relying on one of these public properties or methods will fail.
+
+
+Migration
+=========
+
+These functions are internal and should not be used outside of the core.
\ No newline at end of file
index 4caf1b9..d6e03e8 100644 (file)
@@ -85,7 +85,6 @@ class ContentRepository
             // Make TCEmain object:
             /** @var $tce \TYPO3\CMS\Core\DataHandling\DataHandler */
             $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tce->stripslashes_values = 0;
             // Put content into the data array:
             $data = array();
             $data[$parameters['table']][$parameters['uid']][$parameters['field']] = $typoscript;
index 2592c29..299c472 100644 (file)
@@ -2267,7 +2267,6 @@ class ImportExport
     public function getNewTCE()
     {
         $tce = GeneralUtility::makeInstance(DataHandler::class);
-        $tce->stripslashes_values = false;
         $tce->dontProcessTransformations = 1;
         $tce->enableLogging = $this->enableLogging;
         $tce->alternativeFileName = $this->alternativeFileName;
index a51ee02..9a91b5c 100644 (file)
@@ -528,7 +528,6 @@ class AdministrationRepository
         $data = array();
         $data['pages'][$pageId]['keywords'] = implode(', ', array_keys($keywords));
         $dataHandler = GeneralUtility::makeInstance(DataHandler::class);
-        $dataHandler->stripslashes_values = 0;
         $dataHandler->start($data, array());
         $dataHandler->process_datamap();
     }
index f45e847..fa99caf 100644 (file)
@@ -128,7 +128,6 @@ Cleaning XML for FlexForm fields.
                 }
                 // Execute Data array:
                 $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                $tce->stripslashes_values = false;
                 $tce->dontProcessTransformations = true;
                 $tce->bypassWorkspaceRestrictions = true;
                 $tce->bypassFileHandling = true;
index de9b24c..ec0f21f 100644 (file)
@@ -94,7 +94,6 @@ Although deleted records are not errors to be repaired, this tool allows you to
                 } else {
                     // Execute CMD array:
                     $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                    $tce->stripslashes_values = false;
                     $tce->start(array(), array());
                     // Notice, we are deleting pages with no regard to subpages/subrecords - we do this since they
                     // should also be included in the set of deleted pages of course (no un-deleted record can exist
index 7d38e96..384fba2 100644 (file)
@@ -119,7 +119,6 @@ Will report orphan uids from TCA tables.';
                 } else {
                     // Execute CMD array:
                     $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                    $tce->stripslashes_values = false;
                     $tce->start(array(), array());
                     // Notice, we are deleting pages with no regard to subpages/subrecords - we do this
                     // since they should also be included in the set of orphans of course!
index bb86752..3fbfa9c 100644 (file)
@@ -182,7 +182,6 @@ Automatic Repair:
                 } else {
                     // Execute CMD array:
                     $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                    $tce->stripslashes_values = false;
                     $tce->start(array(), array());
                     $tce->deleteEl($table, $uid, true, true);
                     // Return errors if any:
@@ -221,7 +220,6 @@ Automatic Repair:
             } else {
                 // Execute CMD array:
                 $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                $tce->stripslashes_values = false;
                 $tce->start(array(), array());
                 $tce->deleteAction($table, $uid);
                 // Return errors if any:
index 6b0d737..cdc28aa 100755 (executable)
@@ -260,7 +260,6 @@ class RecordList extends AbstractModule
     {
         if ($this->clear_cache) {
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = 0;
             $tce->start(array(), array());
             $tce->clear_cacheCmd($this->id);
         }
@@ -384,7 +383,6 @@ class RecordList extends AbstractModule
                         $cmd[$iKParts[0]][$iKParts[1]]['delete'] = 1;
                     }
                     $tce = GeneralUtility::makeInstance(DataHandler::class);
-                    $tce->stripslashes_values = 0;
                     $tce->start(array(), $cmd);
                     $tce->process_cmdmap();
                     if (isset($cmd['pages'])) {
index df25ae1..278fd2b 100644 (file)
@@ -365,7 +365,6 @@ class SchedulerModuleController extends \TYPO3\CMS\Backend\Module\BaseScriptClas
             $data = array('be_users' => array('NEW' => array('username' => '_cli_scheduler', 'password' => $password, 'pid' => 0)));
             /** @var $tcemain \TYPO3\CMS\Core\DataHandling\DataHandler */
             $tcemain = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tcemain->stripslashes_values = 0;
             $tcemain->start($data, array());
             $tcemain->process_datamap();
             // Check if a new uid was indeed generated (i.e. a new record was created)
index 61ae7ec..eaa5939 100644 (file)
@@ -290,7 +290,6 @@ class SetupModuleController extends AbstractModule
                 // Make instance of TCE for storing the changes.
                 /** @var DataHandler $dataHandler */
                 $dataHandler = GeneralUtility::makeInstance(DataHandler::class);
-                $dataHandler->stripslashes_values = false;
                 // This is so the user can actually update his user record.
                 $isAdmin = $beUser->user['admin'];
                 $beUser->user['admin'] = 1;
index cc37679..0522f4d 100644 (file)
@@ -489,7 +489,6 @@ class ActionTask implements \TYPO3\CMS\Taskcenter\TaskInterface
         // Save/update user by using TCEmain
         if (is_array($data)) {
             $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tce->stripslashes_values = 0;
             $tce->start($data, array(), $this->getBackendUser());
             $tce->admin = 1;
             $tce->process_datamap();
index 996a04e..2d01ee1 100644 (file)
@@ -136,7 +136,6 @@ class TypoScriptTemplateInfoHook
                         $recData['sys_template'][$saveId] = $tstemplateinfo->processTemplateRowBeforeSaving($recData['sys_template'][$saveId]);
                         // Create new tce-object
                         $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                        $tce->stripslashes_values = 0;
                         // Initialize
                         $tce->start($recData, array());
                         // Saved the stuff
index 0960c32..7877c38 100644 (file)
@@ -135,7 +135,6 @@ class TypoScriptTemplateConstantEditorModuleFunctionController extends AbstractF
                     $recData['sys_template'][$saveId]['constants'] = implode($templateService->raw, LF);
                     // Create new  tce-object
                     $tce = GeneralUtility::makeInstance(DataHandler::class);
-                    $tce->stripslashes_values = false;
                     $tce->start($recData, array());
                     $tce->process_datamap();
                     // Clear the cache (note: currently only admin-users can clear the cache in tce_main.php)
index 7bb2d6b..1df31a3 100644 (file)
@@ -227,7 +227,6 @@ class TypoScriptTemplateInformationModuleFunctionController extends AbstractFunc
                     $recData['sys_template'][$saveId] = $this->processTemplateRowBeforeSaving($recData['sys_template'][$saveId]);
                     // Create new  tce-object
                     $tce = GeneralUtility::makeInstance(DataHandler::class);
-                    $tce->stripslashes_values = false;
                     $tce->alternativeFileName = $alternativeFileName;
                     // Initialize
                     $tce->start($recData, array());
index 2901f5a..311b618 100755 (executable)
@@ -146,7 +146,6 @@ class TypoScriptTemplateModuleController extends BaseScriptClass
         if (GeneralUtility::_GP('clear_all_cache')) {
             /** @var DataHandler $tce */
             $tce = GeneralUtility::makeInstance(DataHandler::class);
-            $tce->stripslashes_values = false;
             $tce->start(array(), array());
             $tce->clear_cacheCmd('all');
         }
@@ -540,7 +539,6 @@ class TypoScriptTemplateModuleController extends BaseScriptClass
         $recData = array();
         /** @var DataHandler $tce */
         $tce = GeneralUtility::makeInstance(DataHandler::class);
-        $tce->stripslashes_values = false;
 
         if (GeneralUtility::_GP('createExtension')) {
             $recData['sys_template']['NEW'] = array(
index e36c111..479e1bf 100644 (file)
@@ -211,7 +211,6 @@ class TypoScriptTemplateObjectBrowserModuleFunctionController extends AbstractFu
                     $recData['sys_template'][$saveId][$field] = $tplRow[$field] . $line;
                     // Create new  tce-object
                     $tce = GeneralUtility::makeInstance(DataHandler::class);
-                    $tce->stripslashes_values = false;
                     // Initialize
                     $tce->start($recData, array());
                     // Saved the stuff
index ad75344..e2d28b8 100644 (file)
@@ -123,7 +123,6 @@ class WorkspacesUtility
             // $rec['swap_modes']==1 means that auto-publishing will swap versions, not just publish and empty the workspace.
             // Execute CMD array:
             $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tce->stripslashes_values = 0;
             $tce->start(array(), $cmd);
             $tce->process_cmdmap();
         }
index 56b2eb5..6531cc9 100644 (file)
@@ -100,7 +100,6 @@ class CreatePagesWizardModuleFunctionController extends \TYPO3\CMS\Backend\Modul
                 if (!empty($data['pages'])) {
                     reset($data);
                     $dataHandler = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                    $dataHandler->stripslashes_values = 0;
                     // set default TCA values specific for the user
                     $TCAdefaultOverride = $this->getBackendUser()->getTSConfigProp('TCAdefaults');
                     if (is_array($TCAdefaultOverride)) {
index 8a13013..0c84533 100644 (file)
@@ -53,7 +53,6 @@ class SortPagesWizardModuleFunction extends \TYPO3\CMS\Backend\Module\AbstractFu
                 }
                 if (!empty($menuItems)) {
                     $tce = GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-                    $tce->stripslashes_values = 0;
                     $menuItems = array_reverse($menuItems);
                     $cmd = array();
                     foreach ($menuItems as $r) {
index 3881702..e065bfe 100644 (file)
@@ -195,7 +195,6 @@ class MassActionHandler extends AbstractHandler
         } else {
             /** @var $tce \TYPO3\CMS\Core\DataHandling\DataHandler */
             $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tce->stripslashes_values = 0;
             // Execute the commands:
             $tce->start(array(), $limitedCmd);
             $tce->process_cmdmap();
index 0750678..943e05d 100644 (file)
@@ -121,9 +121,7 @@ class DataHandlerHook
      */
     protected function getTceMain()
     {
-        $tceMain = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-        $tceMain->stripslashes_values = 0;
-        return $tceMain;
+        return \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
     }
 
     /**
index c0503b7..28e0124 100644 (file)
@@ -52,7 +52,6 @@ class AutoPublishService
             // $rec['swap_modes']==1 means that auto-publishing will swap versions, not just publish and empty the workspace.
             // Execute CMD array:
             $tce = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance(\TYPO3\CMS\Core\DataHandling\DataHandler::class);
-            $tce->stripslashes_values = 0;
             $tce->start(array(), $cmd);
             $tce->process_cmdmap();
         }