Feature #91941
closedMore Events during Extension Configuration
0%
Description
For extension development, it would be helpful if we had an event for reacting to changes in the extension configuration (in ext_conf_template.txt).
To be specific, I have two cases where changing a setting requires an immediate action from my extension.
1. I have a setting that sets a token. It's required that my extension looks for new data immediately when the token changes. Since there's no event, I had to settle for a workaround where I keep another copy of the token in the system registry and perform an update when my controller is called and there's a difference between the registry and the configuration.
2. I have a setting that causes a change to my setup.typoscript. It determines, among other things, whether some additional css is loaded. I've noticed that the css load changes only take effect after the frontend cache is flushed. It would be nice if my extension could take care of flushing the cache in a "settingsChangedEvent" of some kind.
Updated by Frank Nägler over 4 years ago
- Status changed from New to Needs Feedback
from my point of view, you don't need more events but another concept.
The configuration in ext_conf_template.txt and also setup.typoscript should change to runtime.
the configuration is static and should/will be pre-compiled and never change to runtime.
Maybe I don't understand your use case yet fully, but I guess the solution is not a new event.
Updated by Benni Mack almost 4 years ago
- Target version changed from 11.0 to Candidate for Major Version
Updated by Christian Kuhn almost 3 years ago
- Status changed from Needs Feedback to Closed
Hey. I tend to agree to Frank here: extension configuration is a rather static thing that shouldn't be changed at runtime often. It looks as if a TypoScript constant is more suitable for the above use cases - which then can be handled using the constants editor.
I hope it's ok to close this feature request for now. If you think that's a bad solution, feel free to ping me for re-open, or create a fresh issue to further elaborate on use cases.