Alec Mitchell wrote:
This is duplicated in CMFPlone as well, so it can be removed there too. I think the purpose of this may have been to eliminate duplicate actions defined in different action containers (so that one could e.g. override an object action defined sitewide with one defined on a type).
The order of Action providers determines in which order listFilteredActionsFor() returns the Actions. Using the same order for overriding behavior doesn't make much sense to me.
But of course this check does not actually do that, or apparently anything useful. Removing it sounds like an excellent idea.
It would be nice if two actions with the same id and category from different action containers did not result in duplication, but the method is slow enough as it is.
What would be better than returning both? Maybe raising an error?
If you ask me, the fact that you can define duplicate Actions is a bug, not a feature.
CMF HEAD (1.6) has one central Action provider (not yet for all Actions) that should be used by all products. Instead of shipping with a tool that has predefined Actions, products should ship with a CMFSetup extension profile that defines the Actions in an XML file. Conflicts between Actions have to be resolved on set-up time, not when listFilteredActionsFor() is called.
_______________________________________________ Zope-CMF maillist - Zope-CMF@lists.zope.org http://mail.zope.org/mailman/listinfo/zope-cmf
See http://collector.zope.org/CMF for bug reports and feature requests