Bug #16766 ยป 0004616.patch
t3lib/class.t3lib_tcemain.php (Revision 4262) | ||
---|---|---|
var $autoVersionIdMap = Array(); // Contains mapping of auto-versionized records.
|
||
var $substNEWwithIDs = Array(); // When new elements are created, this array contains a map between their "NEW..." string IDs and the eventual UID they got when stored in database
|
||
var $substNEWwithIDs_table = Array(); // Like $substNEWwithIDs, but where each old "NEW..." id is mapped to the table it was from.
|
||
var $newRelatedIDs = Array(); // Holds the tables and there the ids of newly created child records from IRRE
|
||
var $copyMappingArray_merged = Array(); // This array is the sum of all copying operations in this class. May be READ from outside, thus partly public.
|
||
var $copiedFileMap = Array(); // A map between input file name and final destination for files being attached to records.
|
||
var $errorLog = Array(); // Errors are collected in this variable.
|
||
... | ... | |
if(is_array($valueArray)) {
|
||
foreach($valueArray as $key => $value) {
|
||
if(strpos($value, 'NEW') !== false) {
|
||
// fetch the proper uid as integer for the NEW...-ID
|
||
$valueArray[$key] = $this->substNEWwithIDs[$value];
|
||
// set a hint that this was a new child record
|
||
$this->newRelatedIDs[$table][] = $valueArray[$key];
|
||
}
|
||
}
|
||
$remapAction['args'][$remapAction['pos']['valueArray']] = $valueArray;
|
typo3/alt_doc.php (Revision 4262) | ||
---|---|---|
if(count($keys) > 0) {
|
||
foreach($keys as $key) {
|
||
$editId = $tce->substNEWwithIDs[$key];
|
||
// translate new id to the workspace version:
|
||
if ($versionRec = t3lib_BEfunc::getWorkspaceVersionOfRecord($GLOBALS['BE_USER']->workspace, $nTable, $editId,'uid')) {
|
||
$editId = $versionRec['uid'];
|
||
// check if the $editId isn't a child record of an IRRE action
|
||
if (!(is_array($tce->newRelatedIDs[$tableName]) && in_array($editId, $tce->newRelatedIDs[$tableName]))) {
|
||
// translate new id to the workspace version:
|
||
if ($versionRec = t3lib_BEfunc::getWorkspaceVersionOfRecord($GLOBALS['BE_USER']->workspace, $nTable, $editId,'uid')) {
|
||
$editId = $versionRec['uid'];
|
||
}
|
||
$newEditConf[$tableName][$editId] = 'edit';
|
||
}
|
||
$newEditConf[$tableName][$editId] = 'edit';
|
||
|
||
// Traverse all new records and forge the content of ->editconf so we can continue to EDIT these records!
|
||
if ($tableName=='pages' && $this->retUrl!='dummy.php' && $this->returnNewPageId) {
|