I have a complex web app, where special plugins are created for user groups. Eg Admin, Editor all have their groups. Each of these groups has its own tasks and customized forms in processing one saved entry, often with a different layout / elements.
It has worked great so far. But now we have one new request from the client, their special customer needs a completely different or customized flow, which is not compatible with the existing MVC structure. This means that in one user group we have to add some functionality from other groups, also change templates, validation, relations.
In this case we do the overriding template via an additional plugin, but how about the override controller and the model?
For example: When we call example.com/editor/articles/add the plugin Editor has its own MVC, for a special customer, the Editor should use the MVC from the SpecialEditor plugin.
How to override the existing MVC?