‪TYPO3CMS  10.4
TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate Class Reference
Inheritance diagram for TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate:
TYPO3\CMS\Install\Updates\UpgradeWizardInterface TYPO3\CMS\Install\Updates\ChattyInterface

Public Member Functions

string getIdentifier ()
 
string getTitle ()
 
string getDescription ()
 
bool updateNecessary ()
 
string[] getPrerequisites ()
 
 setOutput (OutputInterface $output)
 
bool executeUpdate ()
 

Protected Member Functions

 mergePagesLanguageOverlayIntoPages ()
 
 updateInlineRelations ()
 
 updateSysHistoryRelations ()
 
array fetchDefaultLanguagePageRecord (int $pageId)
 
bool isOverlayRecordMigratedAlready (int $overlayUid)
 
bool checkIfWizardIsRequired ()
 

Protected Attributes

OutputInterface $output
 

Detailed Description

Merge pages_language_overlay rows into pages table

This class is only meant to be used within EXT:install and is not part of the TYPO3 Core API.

Definition at line 29 of file MigratePagesLanguageOverlayUpdate.php.

Member Function Documentation

◆ checkIfWizardIsRequired()

bool TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::checkIfWizardIsRequired ( )
protected

Check if the database table "pages_language_overlay" exists and if so, if there are entries in the DB table.

Returns
‪bool
Exceptions

Definition at line 329 of file MigratePagesLanguageOverlayUpdate.php.

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\updateNecessary().

◆ executeUpdate()

◆ fetchDefaultLanguagePageRecord()

array TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::fetchDefaultLanguagePageRecord ( int  $pageId)
protected

Fetches a certain page

Parameters
int$pageId
Returns
‪array

Definition at line 280 of file MigratePagesLanguageOverlayUpdate.php.

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\mergePagesLanguageOverlayIntoPages().

◆ getDescription()

string TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::getDescription ( )
Returns
‪string Longer description of this updater

Implements TYPO3\CMS\Install\Updates\UpgradeWizardInterface.

Definition at line 54 of file MigratePagesLanguageOverlayUpdate.php.

◆ getIdentifier()

string TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::getIdentifier ( )
Returns
‪string Unique identifier of this updater

Implements TYPO3\CMS\Install\Updates\UpgradeWizardInterface.

Definition at line 38 of file MigratePagesLanguageOverlayUpdate.php.

◆ getPrerequisites()

string [] TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::getPrerequisites ( )
Returns
‪string[] All new fields and tables must exist

Implements TYPO3\CMS\Install\Updates\UpgradeWizardInterface.

Definition at line 79 of file MigratePagesLanguageOverlayUpdate.php.

◆ getTitle()

string TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::getTitle ( )
Returns
‪string Title of this updater

Implements TYPO3\CMS\Install\Updates\UpgradeWizardInterface.

Definition at line 46 of file MigratePagesLanguageOverlayUpdate.php.

◆ isOverlayRecordMigratedAlready()

bool TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::isOverlayRecordMigratedAlready ( int  $overlayUid)
protected

Verify if a single overlay record has been migrated to pages already by checking the db field legacy_overlay_uid for the orig uid

Parameters
int$overlayUid
Returns
‪bool

Definition at line 305 of file MigratePagesLanguageOverlayUpdate.php.

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\mergePagesLanguageOverlayIntoPages().

◆ mergePagesLanguageOverlayIntoPages()

TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::mergePagesLanguageOverlayIntoPages ( )
protected
  1. ‪Fetches ALL pages_language_overlay (= translations) records
  2. ‪Fetches the given page record (= original language) for each translation
  3. ‪Populates the values from the original language IF the field in the translation record is NOT SET (empty is fine)
  4. ‪Adds proper fields for the translations which is
    • ‪l10n_parent = UID of the original-language-record
    • ‪pid = PID of the original-language-record (please note: THIS IS DIFFERENT THAN IN pages_language_overlay)
    • ‪l10n_source = UID of the original-language-record (only this is supported currently)

Definition at line 134 of file MigratePagesLanguageOverlayUpdate.php.

References TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\fetchDefaultLanguagePageRecord(), and TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\isOverlayRecordMigratedAlready().

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\executeUpdate().

◆ setOutput()

TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::setOutput ( OutputInterface  $output)

Additional output if there are columns with mm config

Parameters
OutputInterface$output

Implements TYPO3\CMS\Install\Updates\ChattyInterface.

Definition at line 91 of file MigratePagesLanguageOverlayUpdate.php.

References TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\$output.

◆ updateInlineRelations()

TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::updateInlineRelations ( )
protected

Inline relations with foreign_field, foreign_table, foreign_table_field on pages_language_overlay TCA get their existing relations updated to new uid and pages table.

Definition at line 186 of file MigratePagesLanguageOverlayUpdate.php.

References $GLOBALS.

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\executeUpdate().

◆ updateNecessary()

bool TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::updateNecessary ( )

Checks whether updates are required.

Returns
‪bool Whether an update is required (TRUE) or not (FALSE)

Implements TYPO3\CMS\Install\Updates\UpgradeWizardInterface.

Definition at line 67 of file MigratePagesLanguageOverlayUpdate.php.

References TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\checkIfWizardIsRequired().

◆ updateSysHistoryRelations()

TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::updateSysHistoryRelations ( )
protected

Update recuid and tablename of sys_history table to pages and new uid for all pages_language_overlay rows

Definition at line 239 of file MigratePagesLanguageOverlayUpdate.php.

Referenced by TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate\executeUpdate().

Member Data Documentation

◆ $output

OutputInterface TYPO3\CMS\Install\Updates\MigratePagesLanguageOverlayUpdate::$output
protected