[BUGFIX] FAL Upgrade Wizards do not set pid 16/19216/2
authorBenjamin Mack <benni@typo3.org>
Sat, 23 Mar 2013 14:04:41 +0000 (15:04 +0100)
committerBenjamin Mack <benni@typo3.org>
Sun, 24 Mar 2013 09:59:08 +0000 (10:59 +0100)
commit7607382615ab75299e96738f49da80422407688c
treed9c084a989a169369f8fa9aef9c164bf24b2f598
parent43b2b7bcd1d5f9870d6d243b66033a1b70fe66b3
[BUGFIX] FAL Upgrade Wizards do not set pid

The sys_file_reference records are originally set to
be placed on rootLevel, the upgrade wizard does
exactly that.

However, the concept in this case is flawed
- When creating new sys_file_reference records via IRRE,
   the sys_file_reference is stored on the page
- When copying moving e.g. a tt_content record, all its
   child elements are placed on that new page as
   well (so this works)
- rootLevel restriction is not needed in this case

The patch does the following:
- Modify the existing upgrade wizard to place the
   sys_file_references on the pages of the foreign
   tables (tt_content pid)
- the rootLevel flag for sys_file_reference is removed
- Add a new upgrade wizard is added to ensure the
integrity of the sys-file-reference pids

Releases: 6.1, 6.0
Resolves: #46497
Change-Id: Ic592024669f68ed1606ed36eb050d1dfa5ad66bb
Reviewed-on: https://review.typo3.org/19216
Reviewed-by: Henrik Ziegenhain
Tested-by: Henrik Ziegenhain
Reviewed-by: Benjamin Mack
Tested-by: Benjamin Mack
t3lib/stddb/tables.php
typo3/sysext/install/Classes/Updates/ReferenceIntegrityUpdateWizard.php [new file with mode: 0644]
typo3/sysext/install/Classes/Updates/TceformsUpdateWizard.php
typo3/sysext/install/Classes/Updates/TtContentUploadsUpdateWizard.php
typo3/sysext/install/ext_localconf.php