Bug #17600
closed
Overriding multilevel UC settings fails
Added by Michael Stucki about 17 years ago.
Updated about 11 years ago.
Description
It is possible to override UC settings using BE-USER-TSconfig:
- setup.override.disableTabInTextarea = 1
- => works fine
However, overriding multilevel properties will not work:
- setup.override.TSFE_adminConfig.display_top = 1
- => no effect
The reason for the problem is that the TSconfig output is processed like regular TSconfig and therefore, parent keys have trailing dots:
- ['TSFE_adminConfig.']['display_top']
However, the UC array does not know these keys and looks for this key in this example:
- ['TSFE_adminConfig']['display_top']
(issue imported from #M6337)
Files
The attached patch solves the problem by stripping all trailing dots right before the exsting UC is merged with the TSconfig settings.
Additionally, it makes sure that the override routine is also called at these places:
- when making changes to any module ($this->uc['moduleData'])
- when storing the admin panel (e.g. closing the "edit" module)
This assures that override settings really can't be changed, so for example, the admin panel can be configured sticky and can't be closed.
How to test:
- enable the admin panel in the TS template
- set these properties for a BE user/group:
setup.override {
TSFE_adminConfig.display_top = 1
TSFE_adminConfig.display_cache = 1
TSFE_adminConfig.display_edit = 0
TSFE_adminConfig.display_info = 1
}
- Try opening the "edit" module
- Try closing the "info" module
NOTICE: Now that the feature is working it should of course be added to the TSconfig Documentation. The property was already there, it just didn't work...
- Status changed from Accepted to Needs Feedback
- Target version deleted (
0)
The issue is very old, does this issue exists in newer versions of TYPO3 CMS (4.5 or 6.1)?
- Status changed from Needs Feedback to Closed
- Assignee deleted (
Michael Stucki)
No feedback for over 90 days.
Also available in: Atom
PDF