[BUGFIX] Do not re-sort IRRE children when sorting parent 23/57623/3
authorTymoteusz Motylewski <t.motylewski@gmail.com>
Mon, 25 Jun 2018 18:59:30 +0000 (20:59 +0200)
committerAndreas Wolf <andreas.wolf@typo3.org>
Thu, 26 Jul 2018 12:20:29 +0000 (14:20 +0200)
When PID of the parent record has not changed, child records should
not be moved/sorted.

Little background helping reviewing the patch:

The 2 important changes are made in DataHandler.php line 4603
and DataHandlerHook.php around line 346.
In both cases the condition is added checking if the destination PID
of the record is the same as current one.
In that case, processing of the IRRE children is skipped.

All the changes made in the .csv files are reflecting that.
To validate them one can compare the content of the csv files
with LiveDefaultElements.csv datasets.

For example, check that sorting values in file:
core/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeParentContentSorting.csv
are the same as in the:
core/Tests/Functional/DataHandling/IRRE/CSV/DataSet/LiveDefaultElements.csv

In the Workspaces related datasets, you will see that there
are no move placeholders for IRRE children any more
(and versioned records have 0 instead of 4 in the t3ver_state).

See e.g.:
workspaces/Tests/Functional/DataHandling/FAL/Modify/DataSet/changeContentSorting.csv
or
workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeParentContentSorting.csv

This patch also solves the issue that sorting of the LIVE records (IRRE children)
were modified, when sorting parent record in the Workspaces,
see e.g. record tx_irretutorial_1nff_hotel uid 2 and 5 in file:
workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeParentContentSorting.csv

Releases: master, 8.7
Resolves: #85304
Change-Id: I44573b334873400af628066beae84705c5af0408
Reviewed-on: https://review.typo3.org/57623
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Wolf <andreas.wolf@typo3.org>
Tested-by: Andreas Wolf <andreas.wolf@typo3.org>
typo3/sysext/core/Classes/DataHandling/DataHandler.php
typo3/sysext/core/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeParentContentSorting.csv
typo3/sysext/core/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeParentContentSorting.csv
typo3/sysext/version/Classes/Hook/DataHandlerHook.php
typo3/sysext/workspaces/Tests/Functional/DataHandling/FAL/Modify/DataSet/changeContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Modify/DataSet/changeParentContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/Publish/DataSet/changeParentContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/CSV/PublishAll/DataSet/changeParentContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Modify/DataSet/changeParentContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/Publish/DataSet/changeParentContentSorting.csv
typo3/sysext/workspaces/Tests/Functional/DataHandling/IRRE/ForeignField/PublishAll/DataSet/changeParentContentSorting.csv

index 6623dcb..49dc4fc 100644 (file)
@@ -4393,14 +4393,16 @@ class DataHandler
         // This is the actual pid of the moving to destination
         $resolvedPid = $this->resolvePid($table, $destPid);
         // Finding out, if the record may be moved from where it is. If the record is a non-page, then it depends on edit-permissions.
-        // If the record is a page, then there are two options: If the page is moved within itself, (same pid) it's edit-perms of the pid. If moved to another place then its both delete-perms of the pid and new-page perms on the destination.
+        // If the record is a page, then there are two options: If the page is moved within itself,
+        // (same pid) it's edit-perms of the pid. If moved to another place then its both delete-perms of the pid and new-page perms on the destination.
         if ($table !== 'pages' || $resolvedPid == $moveRec['pid']) {
             // Edit rights for the record...
             $mayMoveAccess = $this->checkRecordUpdateAccess($table, $uid);
         } else {
             $mayMoveAccess = $this->doesRecordExist($table, $uid, 'delete');
         }
-        // Finding out, if the record may be moved TO another place. Here we check insert-rights (non-pages = edit, pages = new), unless the pages are moved on the same pid, then edit-rights are checked
+        // Finding out, if the record may be moved TO another place. Here we check insert-rights (non-pages = edit, pages = new),
+        // unless the pages are moved on the same pid, then edit-rights are checked
         if ($table !== 'pages' || $resolvedPid != $moveRec['pid']) {
             // Insert rights for the record...
             $mayInsertAccess = $this->checkRecordInsertAccess($table, $resolvedPid, 4);
@@ -4606,14 +4608,14 @@ class DataHandler
      * If child records are found, they are also move to the new $destPid.
      *
      * @param string $table Record Table
-     * @param string $uid Record UID
-     * @param string $destPid Position to move to
+     * @param int $uid Record UID
+     * @param int $destPid Position to move to
      */
     public function moveRecord_procFields($table, $uid, $destPid)
     {
         $conf = $GLOBALS['TCA'][$table]['columns'];
         $row = BackendUtility::getRecordWSOL($table, $uid);
-        if (is_array($row)) {
+        if (is_array($row) && (int)$destPid !== (int)$row['pid']) {
             foreach ($row as $field => $value) {
                 $this->moveRecord_procBasedOnFieldType($table, $uid, $destPid, $field, $value, $conf[$field]['config']);
             }
index 32b1379..6302f82 100644 (file)
@@ -4,21 +4,21 @@
 ,298,89,512,0,0,0,0,0,0,0,0,0,"Regular Element #2",5
 "tx_irretutorial_1ncsv_hotel",,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","offers"
-,3,89,16,0,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
-,4,89,32,0,0,0,0,0,0,0,0,0,"Hotel #2",7
+,3,89,256,0,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
+,4,89,128,0,0,0,0,0,0,0,0,0,"Hotel #2",7
 ,5,89,64,0,0,0,0,0,0,0,0,0,"Hotel #1",8
 "tx_irretutorial_1ncsv_offer",,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","prices"
-,5,89,4,0,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
-,6,89,8,0,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
-,7,89,16,0,0,0,0,0,0,0,0,0,"Offer #2.1",12
+,5,89,256,0,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
+,6,89,128,0,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
+,7,89,64,0,0,0,0,0,0,0,0,0,"Offer #2.1",12
 ,8,89,32,0,0,0,0,0,0,0,0,0,"Offer #1.1",13
 "tx_irretutorial_1ncsv_price",,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title",
-,7,89,64,0,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,7,89,256,0,0,0,0,0,0,0,0,0,"Price #1.1.1",
 ,8,89,128,0,0,0,0,0,0,0,0,0,"Price #1.1.2",
-,9,89,256,0,0,0,0,0,0,0,0,0,"Price #1.1.3",
-,10,89,512,0,0,0,0,0,0,0,0,0,"Price #1.2.1",
-,11,89,768,0,0,0,0,0,0,0,0,0,"Price #1.2.2",
-,12,89,1024,0,0,0,0,0,0,0,0,0,"Price #2.1.1",
-,13,89,1280,0,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,9,89,64,0,0,0,0,0,0,0,0,0,"Price #1.1.3",
+,10,89,32,0,0,0,0,0,0,0,0,0,"Price #1.2.1",
+,11,89,16,0,0,0,0,0,0,0,0,0,"Price #1.2.2",
+,12,89,8,0,0,0,0,0,0,0,0,0,"Price #2.1.1",
+,13,89,4,0,0,0,0,0,0,0,0,0,"Price #1.1.1",
index 6472f63..483fd49 100644 (file)
@@ -4,22 +4,22 @@
 ,298,89,512,0,0,0,0,0,0,0,0,0,"Regular Element #2",1,,,
 "tx_irretutorial_1nff_hotel",,,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","offers"
-,2,89,768,0,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
-,3,89,256,0,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
-,4,89,512,0,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
-,5,89,1280,0,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
+,2,89,1,0,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
+,3,89,1,0,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
+,4,89,2,0,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
+,5,89,1,0,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
 "tx_irretutorial_1nff_offer",,,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","prices"
-,5,89,128,0,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
-,6,89,256,0,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
-,7,89,512,0,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
-,8,89,1024,0,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
+,5,89,1,0,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
+,6,89,2,0,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
+,7,89,1,0,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
+,8,89,1,0,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
 "tx_irretutorial_1nff_price",,,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3_origuid","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier",
-,7,89,16,0,0,0,0,0,0,0,0,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
-,8,89,32,0,0,0,0,0,0,0,0,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
-,9,89,64,0,0,0,0,0,0,0,0,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
-,10,89,128,0,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
-,11,89,256,0,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
-,12,89,512,0,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
-,13,89,1280,0,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
+,7,89,1,0,0,0,0,0,0,0,0,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
+,8,89,2,0,0,0,0,0,0,0,0,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
+,9,89,3,0,0,0,0,0,0,0,0,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
+,10,89,1,0,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
+,11,89,2,0,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
+,12,89,1,0,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
+,13,89,1,0,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
index e0586f7..ca7958b 100644 (file)
@@ -310,10 +310,14 @@ class DataHandlerHook
             if (empty($WSversion['uid'])) {
                 $dataHandler->versionizeRecord($table, $uid, 'MovePointer');
                 $WSversion = BackendUtility::getWorkspaceVersionOfRecord($dataHandler->BE_USER->workspace, $table, $uid, 'uid,t3ver_oid');
-                $this->moveRecord_processFields($dataHandler, $resolvedPid, $table, $uid);
+                if ((int)$resolvedPid !== (int)$propArr['pid']) {
+                    $this->moveRecord_processFields($dataHandler, $resolvedPid, $table, $uid);
+                }
             } elseif ($dataHandler->isRecordCopied($table, $uid) && (int)$dataHandler->copyMappingArray[$table][$uid] === (int)$WSversion['uid']) {
                 // If the record has been versioned before (e.g. cascaded parent-child structure), create only the move-placeholders
-                $this->moveRecord_processFields($dataHandler, $resolvedPid, $table, $uid);
+                if ((int)$resolvedPid !== (int)$propArr['pid']) {
+                    $this->moveRecord_processFields($dataHandler, $resolvedPid, $table, $uid);
+                }
             }
         }
         // Check workspace permissions:
index e748a03..165c31f 100644 (file)
@@ -4,10 +4,8 @@
 ,127,89,0,0,0,0,0,0,0,0,0,21,330,"tt_content","image",1,"sys_file","Kasper",,,,
 ,128,89,0,0,0,0,0,0,0,0,0,21,331,"tt_content","image",1,"sys_file","Taken at T3BOARD",,,,
 ,129,89,0,0,0,0,0,0,0,0,0,1,331,"tt_content","image",2,"sys_file","This is Kasper",,,,
-,130,-1,0,0,0,0,1,4,0,127,0,21,330,"tt_content","image",1,"sys_file","Kasper",,,,
-,131,-1,0,0,0,0,1,4,0,126,0,1,330,"tt_content","image",2,"sys_file","T3BOARD",,,,
-,132,89,0,0,0,0,1,3,0,0,127,0,330,"tt_content","image",0,"sys_file",,,,,
-,133,89,0,0,0,0,1,3,0,0,126,0,330,"tt_content","image",0,"sys_file",,,,,
+,130,-1,0,0,0,0,1,0,0,127,0,21,330,"tt_content","image",1,"sys_file","Kasper",,,,
+,131,-1,0,0,0,0,1,0,0,126,0,1,330,"tt_content","image",2,"sys_file","T3BOARD",,,,
 "tt_content",,,,,,,,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","header","image",,,,,,,,,
 ,330,89,256,0,0,0,0,0,0,0,0,"Regular Element #1",2,,,,,,,,,
index 05c2eb9..8fa2d07 100644 (file)
@@ -9,40 +9,29 @@
 ,3,89,256,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
 ,4,89,128,0,0,0,0,0,0,0,0,"Hotel #2",7
 ,5,89,64,0,0,0,0,0,0,0,0,"Hotel #1",8
-,6,-1,256,0,0,0,1,4,0,3,0,"Hotel #1","5,6"
-,7,-1,128,0,0,0,1,4,0,4,0,"Hotel #2",7
-,8,89,8,0,0,0,1,3,0,0,3,"[MOVE-TO PLACEHOLDER for #3, WS#1]","5,6"
-,9,89,16,0,0,0,1,3,0,0,4,"[MOVE-TO PLACEHOLDER for #4, WS#1]",7
+,6,-1,256,0,0,0,1,0,0,3,0,"Hotel #1","5,6"
+,7,-1,128,0,0,0,1,0,0,4,0,"Hotel #2",7
 "tx_irretutorial_1ncsv_offer",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","prices"
 ,5,89,256,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
 ,6,89,128,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
 ,7,89,64,0,0,0,0,0,0,0,0,"Offer #2.1",12
 ,8,89,32,0,0,0,0,0,0,0,0,"Offer #1.1",13
-,9,-1,256,0,0,0,1,4,0,5,0,"Offer #1.1","7,8,9"
-,10,-1,128,0,0,0,1,4,0,6,0,"Offer #1.2","10,11"
-,11,-1,64,0,0,0,1,4,0,7,0,"Offer #2.1",12
-,12,89,0,0,0,0,1,3,0,0,5,"[MOVE-TO PLACEHOLDER for #5, WS#1]","7,8,9"
-,13,89,1,0,0,0,1,3,0,0,6,"[MOVE-TO PLACEHOLDER for #6, WS#1]","10,11"
-,14,89,2,0,0,0,1,3,0,0,7,"[MOVE-TO PLACEHOLDER for #7, WS#1]",12
+,9,-1,256,0,0,0,1,0,0,5,0,"Offer #1.1","7,8,9"
+,10,-1,128,0,0,0,1,0,0,6,0,"Offer #1.2","10,11"
+,11,-1,64,0,0,0,1,0,0,7,0,"Offer #2.1",12
 "tx_irretutorial_1ncsv_price",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title",
-,7,89,3328,0,0,0,0,0,0,0,0,"Price #1.1.1",
-,8,89,3072,0,0,0,0,0,0,0,0,"Price #1.1.2",
-,9,89,2816,0,0,0,0,0,0,0,0,"Price #1.1.3",
-,10,89,2560,0,0,0,0,0,0,0,0,"Price #1.2.1",
-,11,89,2304,0,0,0,0,0,0,0,0,"Price #1.2.2",
-,12,89,2048,0,0,0,0,0,0,0,0,"Price #2.1.1",
-,13,89,1792,0,0,0,0,0,0,0,0,"Price #1.1.1",
-,14,-1,256,0,0,0,1,4,0,7,0,"Price #1.1.1",
-,15,-1,128,0,0,0,1,4,0,8,0,"Price #1.1.2",
-,16,-1,64,0,0,0,1,4,0,9,0,"Price #1.1.3",
-,17,-1,32,0,0,0,1,4,0,10,0,"Price #1.2.1",
-,18,-1,16,0,0,0,1,4,0,11,0,"Price #1.2.2",
-,19,-1,8,0,0,0,1,4,0,12,0,"Price #2.1.1",
-,20,89,8,0,0,0,1,3,0,0,7,"[MOVE-TO PLACEHOLDER for #7, WS#1]",
-,21,89,16,0,0,0,1,3,0,0,8,"[MOVE-TO PLACEHOLDER for #8, WS#1]",
-,22,89,32,0,0,0,1,3,0,0,9,"[MOVE-TO PLACEHOLDER for #9, WS#1]",
-,23,89,64,0,0,0,1,3,0,0,10,"[MOVE-TO PLACEHOLDER for #10, WS#1]",
-,24,89,128,0,0,0,1,3,0,0,11,"[MOVE-TO PLACEHOLDER for #11, WS#1]",
-,25,89,256,0,0,0,1,3,0,0,12,"[MOVE-TO PLACEHOLDER for #12, WS#1]",
+,7,89,256,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,8,89,128,0,0,0,0,0,0,0,0,"Price #1.1.2",
+,9,89,64,0,0,0,0,0,0,0,0,"Price #1.1.3",
+,10,89,32,0,0,0,0,0,0,0,0,"Price #1.2.1",
+,11,89,16,0,0,0,0,0,0,0,0,"Price #1.2.2",
+,12,89,8,0,0,0,0,0,0,0,0,"Price #2.1.1",
+,13,89,4,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,14,-1,256,0,0,0,1,0,0,7,0,"Price #1.1.1",
+,15,-1,128,0,0,0,1,0,0,8,0,"Price #1.1.2",
+,16,-1,64,0,0,0,1,0,0,9,0,"Price #1.1.3",
+,17,-1,32,0,0,0,1,0,0,10,0,"Price #1.2.1",
+,18,-1,16,0,0,0,1,0,0,11,0,"Price #1.2.2",
+,19,-1,8,0,0,0,1,0,0,12,0,"Price #2.1.1",
index af80a71..dd2128e 100644 (file)
@@ -5,29 +5,29 @@
 ,299,-1,256,0,0,0,0,0,0,297,0,"Regular Element #1","3,4"
 "tx_irretutorial_1ncsv_hotel",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","offers"
-,3,89,8,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
-,4,89,16,0,0,0,0,0,0,0,0,"Hotel #2",7
+,3,89,256,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
+,4,89,128,0,0,0,0,0,0,0,0,"Hotel #2",7
 ,5,89,64,0,0,0,0,0,0,0,0,"Hotel #1",8
 ,6,-1,256,0,0,0,0,0,0,3,0,"Hotel #1","5,6"
 ,7,-1,128,0,0,0,0,0,0,4,0,"Hotel #2",7
 "tx_irretutorial_1ncsv_offer",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","prices"
-,5,89,0,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
-,6,89,1,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
-,7,89,2,0,0,0,0,0,0,0,0,"Offer #2.1",12
+,5,89,256,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
+,6,89,128,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
+,7,89,64,0,0,0,0,0,0,0,0,"Offer #2.1",12
 ,8,89,32,0,0,0,0,0,0,0,0,"Offer #1.1",13
 ,9,-1,256,0,0,0,0,0,0,5,0,"Offer #1.1","7,8,9"
 ,10,-1,128,0,0,0,0,0,0,6,0,"Offer #1.2","10,11"
 ,11,-1,64,0,0,0,0,0,0,7,0,"Offer #2.1",12
 "tx_irretutorial_1ncsv_price",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title",
-,7,89,8,0,0,0,0,0,0,0,0,"Price #1.1.1",
-,8,89,16,0,0,0,0,0,0,0,0,"Price #1.1.2",
-,9,89,32,0,0,0,0,0,0,0,0,"Price #1.1.3",
-,10,89,64,0,0,0,0,0,0,0,0,"Price #1.2.1",
-,11,89,128,0,0,0,0,0,0,0,0,"Price #1.2.2",
-,12,89,256,0,0,0,0,0,0,0,0,"Price #2.1.1",
-,13,89,1792,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,7,89,256,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,8,89,128,0,0,0,0,0,0,0,0,"Price #1.1.2",
+,9,89,64,0,0,0,0,0,0,0,0,"Price #1.1.3",
+,10,89,32,0,0,0,0,0,0,0,0,"Price #1.2.1",
+,11,89,16,0,0,0,0,0,0,0,0,"Price #1.2.2",
+,12,89,8,0,0,0,0,0,0,0,0,"Price #2.1.1",
+,13,89,4,0,0,0,0,0,0,0,0,"Price #1.1.1",
 ,14,-1,256,0,0,0,0,0,0,7,0,"Price #1.1.1",
 ,15,-1,128,0,0,0,0,0,0,8,0,"Price #1.1.2",
 ,16,-1,64,0,0,0,0,0,0,9,0,"Price #1.1.3",
index af80a71..dd2128e 100644 (file)
@@ -5,29 +5,29 @@
 ,299,-1,256,0,0,0,0,0,0,297,0,"Regular Element #1","3,4"
 "tx_irretutorial_1ncsv_hotel",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","offers"
-,3,89,8,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
-,4,89,16,0,0,0,0,0,0,0,0,"Hotel #2",7
+,3,89,256,0,0,0,0,0,0,0,0,"Hotel #1","5,6"
+,4,89,128,0,0,0,0,0,0,0,0,"Hotel #2",7
 ,5,89,64,0,0,0,0,0,0,0,0,"Hotel #1",8
 ,6,-1,256,0,0,0,0,0,0,3,0,"Hotel #1","5,6"
 ,7,-1,128,0,0,0,0,0,0,4,0,"Hotel #2",7
 "tx_irretutorial_1ncsv_offer",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","prices"
-,5,89,0,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
-,6,89,1,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
-,7,89,2,0,0,0,0,0,0,0,0,"Offer #2.1",12
+,5,89,256,0,0,0,0,0,0,0,0,"Offer #1.1","7,8,9"
+,6,89,128,0,0,0,0,0,0,0,0,"Offer #1.2","10,11"
+,7,89,64,0,0,0,0,0,0,0,0,"Offer #2.1",12
 ,8,89,32,0,0,0,0,0,0,0,0,"Offer #1.1",13
 ,9,-1,256,0,0,0,0,0,0,5,0,"Offer #1.1","7,8,9"
 ,10,-1,128,0,0,0,0,0,0,6,0,"Offer #1.2","10,11"
 ,11,-1,64,0,0,0,0,0,0,7,0,"Offer #2.1",12
 "tx_irretutorial_1ncsv_price",,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title",
-,7,89,8,0,0,0,0,0,0,0,0,"Price #1.1.1",
-,8,89,16,0,0,0,0,0,0,0,0,"Price #1.1.2",
-,9,89,32,0,0,0,0,0,0,0,0,"Price #1.1.3",
-,10,89,64,0,0,0,0,0,0,0,0,"Price #1.2.1",
-,11,89,128,0,0,0,0,0,0,0,0,"Price #1.2.2",
-,12,89,256,0,0,0,0,0,0,0,0,"Price #2.1.1",
-,13,89,1792,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,7,89,256,0,0,0,0,0,0,0,0,"Price #1.1.1",
+,8,89,128,0,0,0,0,0,0,0,0,"Price #1.1.2",
+,9,89,64,0,0,0,0,0,0,0,0,"Price #1.1.3",
+,10,89,32,0,0,0,0,0,0,0,0,"Price #1.2.1",
+,11,89,16,0,0,0,0,0,0,0,0,"Price #1.2.2",
+,12,89,8,0,0,0,0,0,0,0,0,"Price #2.1.1",
+,13,89,4,0,0,0,0,0,0,0,0,"Price #1.1.1",
 ,14,-1,256,0,0,0,0,0,0,7,0,"Price #1.1.1",
 ,15,-1,128,0,0,0,0,0,0,8,0,"Price #1.1.2",
 ,16,-1,64,0,0,0,0,0,0,9,0,"Price #1.1.3",
index 3d3ef98..5d68dd9 100644 (file)
@@ -6,26 +6,21 @@
 ,300,89,768,0,0,0,1,3,0,0,297,"[MOVE-TO PLACEHOLDER for #297, WS#1]",0,,,
 "tx_irretutorial_1nff_hotel",,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","offers"
-,2,89,768,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
+,2,89,1,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
 ,3,89,1,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
 ,4,89,2,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
-,5,89,1280,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
-,6,-1,1,0,0,0,1,4,0,3,0,"Hotel #1",297,"tt_content",,2
-,7,-1,2,0,0,0,1,4,0,4,0,"Hotel #2",297,"tt_content",,1
-,8,89,512,0,0,0,1,3,0,0,3,"[MOVE-TO PLACEHOLDER for #3, WS#1]",297,"tt_content",,0
-,9,89,256,0,0,0,1,3,0,0,4,"[MOVE-TO PLACEHOLDER for #4, WS#1]",297,"tt_content",,0
+,5,89,1,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
+,6,-1,1,0,0,0,1,0,0,3,0,"Hotel #1",297,"tt_content",,2
+,7,-1,2,0,0,0,1,0,0,4,0,"Hotel #2",297,"tt_content",,1
 "tx_irretutorial_1nff_offer",,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","prices"
 ,5,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
 ,6,89,2,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
 ,7,89,1,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
-,8,89,1280,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
-,9,-1,1,0,0,0,1,4,0,5,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
-,10,-1,2,0,0,0,1,4,0,6,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
-,11,-1,1,0,0,0,1,4,0,7,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
-,12,89,512,0,0,0,1,3,0,0,5,"[MOVE-TO PLACEHOLDER for #5, WS#1]",3,"tx_irretutorial_1nff_hotel",,0
-,13,89,256,0,0,0,1,3,0,0,6,"[MOVE-TO PLACEHOLDER for #6, WS#1]",3,"tx_irretutorial_1nff_hotel",,0
-,14,89,128,0,0,0,1,3,0,0,7,"[MOVE-TO PLACEHOLDER for #7, WS#1]",4,"tx_irretutorial_1nff_hotel",,0
+,8,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
+,9,-1,1,0,0,0,1,0,0,5,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
+,10,-1,2,0,0,0,1,0,0,6,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
+,11,-1,1,0,0,0,1,0,0,7,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
 "tx_irretutorial_1nff_price",,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier",
 ,7,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
 ,10,89,1,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
 ,11,89,2,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
 ,12,89,1,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
-,13,89,1536,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
-,14,-1,1,0,0,0,1,4,0,7,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
-,15,-1,2,0,0,0,1,4,0,8,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
-,16,-1,3,0,0,0,1,4,0,9,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
-,17,-1,1,0,0,0,1,4,0,10,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
-,18,-1,2,0,0,0,1,4,0,11,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
-,19,-1,1,0,0,0,1,4,0,12,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
-,20,89,512,0,0,0,1,3,0,0,7,"[MOVE-TO PLACEHOLDER for #7, WS#1]",5,"tx_irretutorial_1nff_offer",,
-,21,89,256,0,0,0,1,3,0,0,8,"[MOVE-TO PLACEHOLDER for #8, WS#1]",5,"tx_irretutorial_1nff_offer",,
-,22,89,128,0,0,0,1,3,0,0,9,"[MOVE-TO PLACEHOLDER for #9, WS#1]",5,"tx_irretutorial_1nff_offer",,
-,23,89,64,0,0,0,1,3,0,0,10,"[MOVE-TO PLACEHOLDER for #10, WS#1]",6,"tx_irretutorial_1nff_offer",,
-,24,89,32,0,0,0,1,3,0,0,11,"[MOVE-TO PLACEHOLDER for #11, WS#1]",6,"tx_irretutorial_1nff_offer",,
-,25,89,16,0,0,0,1,3,0,0,12,"[MOVE-TO PLACEHOLDER for #12, WS#1]",7,"tx_irretutorial_1nff_offer",,
+,13,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
+,14,-1,1,0,0,0,1,0,0,7,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
+,15,-1,2,0,0,0,1,0,0,8,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
+,16,-1,3,0,0,0,1,0,0,9,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
+,17,-1,1,0,0,0,1,0,0,10,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
+,18,-1,2,0,0,0,1,0,0,11,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
+,19,-1,1,0,0,0,1,0,0,12,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
index 4fc050f..b32a9f4 100644 (file)
@@ -5,10 +5,10 @@
 ,299,-1,256,0,0,0,0,0,0,297,0,"Regular Element #1",2,,,
 "tx_irretutorial_1nff_hotel",,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","offers"
-,2,89,768,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
+,2,89,1,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
 ,3,89,1,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
 ,4,89,2,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
-,5,89,1280,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
+,5,89,1,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
 ,6,-1,1,0,0,0,0,0,0,3,0,"Hotel #1",297,"tt_content",,2
 ,7,-1,2,0,0,0,0,0,0,4,0,"Hotel #2",297,"tt_content",,1
 "tx_irretutorial_1nff_offer",,,,,,,,,,,,,,,,
@@ -16,7 +16,7 @@
 ,5,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
 ,6,89,2,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
 ,7,89,1,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
-,8,89,1280,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
+,8,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
 ,9,-1,1,0,0,0,0,0,0,5,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
 ,10,-1,2,0,0,0,0,0,0,6,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
 ,11,-1,1,0,0,0,0,0,0,7,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
@@ -28,7 +28,7 @@
 ,10,89,1,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
 ,11,89,2,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
 ,12,89,1,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
-,13,89,1536,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
+,13,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
 ,14,-1,1,0,0,0,0,0,0,7,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
 ,15,-1,2,0,0,0,0,0,0,8,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
 ,16,-1,3,0,0,0,0,0,0,9,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,
index 4fc050f..b32a9f4 100644 (file)
@@ -5,10 +5,10 @@
 ,299,-1,256,0,0,0,0,0,0,297,0,"Regular Element #1",2,,,
 "tx_irretutorial_1nff_hotel",,,,,,,,,,,,,,,,
 ,"uid","pid","sorting","deleted","sys_language_uid","l18n_parent","t3ver_wsid","t3ver_state","t3ver_stage","t3ver_oid","t3ver_move_id","title","parentid","parenttable","parentidentifier","offers"
-,2,89,768,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
+,2,89,1,0,0,0,0,0,0,0,0,"Hotel #0",89,"pages",,0
 ,3,89,1,0,0,0,0,0,0,0,0,"Hotel #1",297,"tt_content",,2
 ,4,89,2,0,0,0,0,0,0,0,0,"Hotel #2",297,"tt_content",,1
-,5,89,1280,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
+,5,89,1,0,0,0,0,0,0,0,0,"Hotel #1",298,"tt_content",,1
 ,6,-1,1,0,0,0,0,0,0,3,0,"Hotel #1",297,"tt_content",,2
 ,7,-1,2,0,0,0,0,0,0,4,0,"Hotel #2",297,"tt_content",,1
 "tx_irretutorial_1nff_offer",,,,,,,,,,,,,,,,
@@ -16,7 +16,7 @@
 ,5,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
 ,6,89,2,0,0,0,0,0,0,0,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
 ,7,89,1,0,0,0,0,0,0,0,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
-,8,89,1280,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
+,8,89,1,0,0,0,0,0,0,0,0,"Offer #1.1",5,"tx_irretutorial_1nff_hotel",,1
 ,9,-1,1,0,0,0,0,0,0,5,0,"Offer #1.1",3,"tx_irretutorial_1nff_hotel",,3
 ,10,-1,2,0,0,0,0,0,0,6,0,"Offer #1.2",3,"tx_irretutorial_1nff_hotel",,2
 ,11,-1,1,0,0,0,0,0,0,7,0,"Offer #2.1",4,"tx_irretutorial_1nff_hotel",,1
@@ -28,7 +28,7 @@
 ,10,89,1,0,0,0,0,0,0,0,0,"Price #1.2.1",6,"tx_irretutorial_1nff_offer",,
 ,11,89,2,0,0,0,0,0,0,0,0,"Price #1.2.2",6,"tx_irretutorial_1nff_offer",,
 ,12,89,1,0,0,0,0,0,0,0,0,"Price #2.1.1",7,"tx_irretutorial_1nff_offer",,
-,13,89,1536,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
+,13,89,1,0,0,0,0,0,0,0,0,"Price #1.1.1",8,"tx_irretutorial_1nff_offer",,
 ,14,-1,1,0,0,0,0,0,0,7,0,"Price #1.1.1",5,"tx_irretutorial_1nff_offer",,
 ,15,-1,2,0,0,0,0,0,0,8,0,"Price #1.1.2",5,"tx_irretutorial_1nff_offer",,
 ,16,-1,3,0,0,0,0,0,0,9,0,"Price #1.1.3",5,"tx_irretutorial_1nff_offer",,