Commit 68806a35 authored by Stephan Großberndt's avatar Stephan Großberndt Committed by Wouter Wolters
Browse files

[BUGFIX] Do not fetch TSconfig in process_datamap for non-page-records

In DataHandler->process_datamap for each record getTCEMAIN_TSconfig()
is executed, but the returned TSconfig is used only if table is "pages"
and status is "new".

Fetches the TSconfig only if table is "pages" and status is "new".

Resolves: #63778
Releases: master, 6.2
Change-Id: Ifded6daf2b5b6b61a9c95ba3962566450a07d72e
Reviewed-on: http://review.typo3.org/35304


Reviewed-by: default avatarMarkus Klein <klein.t3@reelworx.at>
Tested-by: default avatarMarkus Klein <klein.t3@reelworx.at>
Reviewed-by: default avatarLukas Krieger <lukas.krieger@me.com>
Reviewed-by: Wouter Wolters's avatarWouter Wolters <typo3@wouterwolters.nl>
Tested-by: Wouter Wolters's avatarWouter Wolters <typo3@wouterwolters.nl>
parent 40c58a78
......@@ -1102,9 +1102,11 @@ class DataHandler {
if ($recordAccess) {
// Here the "pid" is set IF NOT the old pid was a string pointing to a place in the subst-id array.
list($tscPID) = BackendUtility::getTSCpid($table, $id, $old_pid_value ? $old_pid_value : $fieldArray['pid']);
$TSConfig = $this->getTCEMAIN_TSconfig($tscPID);
if ($status == 'new' && $table == 'pages' && is_array($TSConfig['permissions.'])) {
$fieldArray = $this->setTSconfigPermissions($fieldArray, $TSConfig['permissions.']);
if ($status === 'new' && $table === 'pages') {
$TSConfig = $this->getTCEMAIN_TSconfig($tscPID);
if (isset($TSConfig['permissions.']) && is_array($TSConfig['permissions.'])) {
$fieldArray = $this->setTSconfigPermissions($fieldArray, $TSConfig['permissions.']);
}
}
// Processing of all fields in incomingFieldArray and setting them in $fieldArray
$fieldArray = $this->fillInFieldArray($table, $id, $fieldArray, $incomingFieldArray, $theRealPid, $status, $tscPID);
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment