Project

General

Profile

Actions

Bug #71621

closed

Change in PageRepository breaks overlaying of universal language records

Added by Joschi Kuphal over 8 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
Localization
Target version:
-
Start date:
2015-11-17
Due date:
% Done:

100%

Estimated time:
TYPO3 Version:
7
PHP Version:
5.5
Tags:
Complexity:
easy
Is Regression:
Yes
Sprint Focus:

Description

For whatever reasons a change was made in PageRepository->getRecordOverlay(), effectively breaking the overlay of records with sys_language_uid = -1.

TYPO3 7.5 (typo3/sysext/frontend/Classes/Page/PageRepository.php line 488):

// Must be default language or [All], otherwise no overlaying:
if ($row[$GLOBALS['TCA'][$table]['ctrl']['languageField']] <= 0) {
    // ...
}

TYPO3 7.6 (typo3/sysext/frontend/Classes/Page/PageRepository.php line 484):

// Must be default language or [All], otherwise no overlaying:
if ((int)$row[$GLOBALS['TCA'][$table]['ctrl']['languageField']] === 0) {
    // ...
}

Mind the comment: "... default language or [All]" — doesn't the comparison against === 0 explicitly exclude the all-languages setting?

The change completely breaks one of our sites, reverting the comparison back to <= 0 seems to fix it again however (at a first glance). There must have been a reason for this change though, right?


Related issues 2 (0 open2 closed)

Related to TYPO3 Core - Bug #38940: localization of "All languages" in listview possibleClosedMathias Schreiber2012-07-13

Actions
Related to TYPO3 Core - Bug #78639: Localizing Records with language "All" impossibleClosed2016-11-10

Actions
Actions

Also available in: Atom PDF