femanager icon indicating copy to clipboard operation
femanager copied to clipboard

Keep order of typoscript keys

Open nicodh opened this issue 3 months ago • 1 comments

The keys in a typoscript configuration are considered to express the priority of the values.

Like in view.templateRootPaths the highest value should be used. This is not the case with the current implementation.

This might be caused by a core issue, since ->getConfiguration(ConfigurationManagerInterface::CONFIGURATION_TYPE_FRAMEWORK, 'femanager'); should return the arrays in correct order. But it doesn't, the key depend on the order of imports of typoscript.

The Typoscript Module takes that in consideration and shows the correct order:

Typoscript-ActiveRecord

The configuration received in https://github.com/in2code-de/femanager/blob/74e366143cfa0290eb1517de36071d722d86626f/Classes/Utility/TemplateUtility.php#L48 has a random order:

FrontendTypoScript-setupArray

Since finally only the last entry is returned in https://github.com/in2code-de/femanager/blob/74e366143cfa0290eb1517de36071d722d86626f/Classes/Utility/TemplateUtility.php#L85 this results in a false value. It is not possible to override the value from outside

This PR restores the order by sorting the keys and returning an array of sorted entries according to the key order.

nicodh avatar Sep 23 '25 06:09 nicodh