Project

General

Profile

Actions

Task #54813

closed

BackendConfigurationManager figures out wrong pid

Added by Felix Oertel over 10 years ago. Updated about 4 years ago.

Status:
Closed
Priority:
Must have
Assignee:
-
Category:
Extbase
Start date:
2014-01-07
Due date:
% Done:

0%

Estimated time:
TYPO3 Version:
6.2
PHP Version:
Tags:
Complexity:
medium
Sprint Focus:

Description

For backend modules, in Configuration/BackendConfigurationManager.php:getCurrentPageId() we try to find the current pid. If we are in Web->, the id is readable via _GP('id'), everything is fine.

If we are outside Web->, there is no pid. The manager then tries to figure some useful pid out. It first looks for a page markes "is_siteroot" and then a sys_template marked "root". While the treeroot is id 0, the manager will usually use id 1, because this is, where the root template resides.

This causes problems with caching, because the core takes id 0 for "global" scope. For example the caches in "cf_cache_pagesection" are generated (and tagged) for pid 0, if no specific pid is given.

While the method is currently protected and I don't think too much people will have their configurationManager inherited, this still would be a breaking change. It's a bug, so breaking change would be ok, but some people mind find, it's not quiet the right time for that.

If that would be the case, I would propose deprecating this method and introducing a new one to deal with the pid correctly.


Related issues 4 (1 open3 closed)

Related to TYPO3 Core - Bug #55028: Static TS must be available even when there is no page UIDClosed2014-01-15

Actions
Related to TYPO3 Core - Task #54701: Cache global TypoScript template in backendClosedFelix Oertel2014-01-02

Actions
Related to TYPO3 Core - Task #86262: Deprecate FE TypoScript processing in BERejected2018-09-15

Actions
Related to TYPO3 Core - Bug #88572: ConfigurationManager returns wrong configurationAccepted2019-06-17

Actions
Actions

Also available in: Atom PDF