Hello everyone,
I am developing a suite of plugins for Moodle 2.8.5 (Moodle 3.0 seems to have the same problem), a base plugin and multiple plugins dependent on the base plugin.
All of those plugins are local plugins. I would like for them to be specific plugin types, e.g. reports, but reports can't extend the navigation as well as I want them to, which is another problem entirely.
Anyways, the base plugin extends the settings navigation of the course administration by adding a simple container for further entries.
The other plugins depend on the base plugin and extend the settings navigation further by adding entries to their pages to the base plugin nav container.
Which is all fine and dandy until the plugin names prevent this.
When Moodle looks for navigation extension in local plugins, it looks for all plugins having lib.php containing "_extends_settings_navigation" functions. It returns a list of matching plugins and calls the functions for each plugin.
But Moodle doesn't sort those found plugins according to the plugin dependencies.
Is this done intentionally?