Plugin system – request for comments

Since the release of Collabtive 0.6 we are working on a plugin system for Collabtive.
This will allow it to write third-party addons for Collabtive in the future.

Some code has already been written.
However, doing a plugin system right requires some serious considerations and design challenges / decisions to be made.

Therefore i ask those of you with some programming knowledge for your input on this.
Please have a look at the code, and post your suggestions or ideas regarding the plugin system in our forums at http://collabtive.o-dyn.de/forum/viewtopic.php?f=8&t=1172.

What has been implemented
* Simple plugin directory
* Register plugins with Collabtive
* Install Plugins according to XML config files
* Register custom plugin-events with Collabtive (an event is a custom function from a plugin called at certain conditions)

What needs to be done
* Finding and implementing a proper way for Plugins to extend the Collabtive User Interface. This should be template-agnostic.
* Perfecting the current events system
* Various implementation considerations

If you’re interested in this, please have a look at
http://code.google.com/p/collabtiv/source/browse/init.php
http://code.google.com/p/collabtiv/source/browse/manageplugins.php
http://code.google.com/p/collabtiv/source/browse/include/class.plugin.php
http://code.google.com/p/collabtiv/source/browse/plugins/testplugin/config.xml
http://code.google.com/p/collabtiv/source/browse/plugins/testplugin/class.testplugin.php

I’m looking forward to your feedback :)