[Zope-CMF] Allowed content types (CMF 1.5 - Roadmap)
limi at plone.org
Fri Mar 12 21:12:31 EST 2004
(CC-ing this to Plone Developers, as they feel this pain very often, and
can surely explain the scenario a bit more in-depth than yours truly :)
Since we're still talking about CMF 1.5 and the roadmap, I was surprised
that no-one mentioned the #1 most requested feature in the CMF: Deciding
who can add what where.
Roles-based Add Permission is already possible on a global level, what's
needed is a way to allow this on a *per-content-type* basis.
Something like this:
Manager Reviewer Member
CMF: Add Document [x] [ ] [x]
CMF: Add News Item [x] [ ] [ ]
CMF: Add Event [x] [x] [ ]
The current CMF notion of having *one* permission that is common to all
content types is pretty restricting. Similarly, there should be such
permissions for Deleting/Modifying the different content types. (Also, if
this is happening and new permissions are needed, it would be nice to
follow the Product: Permission Name naming convention. Minor nitpick, but
you all know how hard it is to find the permission you need in a list of
300 alphabetically sorted permissions. :)
You generally manage permissions with workflows in the CMF, and it would
also be a nice benefit to apply this on individual content types - say if
you wanted only Documents to be addable in one state, and only
DocumentReviews to be addable in the next state.
In Plone, we have 'getAllowedTypes' and 'getNotAddableTypes' to control
what shows up in the menu, but this is not really a security restriction -
only a way to avoid 200 content types in the Add menu. It gets pretty
nasty on big sites with lots of different content types when you can add
anything anywhere. (Yes, I know you can repurpose folders and restrict the
set of addable objects, but guess what? Types explosion isn't lessened by
This would require a big change to the Types Tool including
FactoryTypeInformation, but it's sorely needed.
I'm sure others have use cases that I haven't touched on, would be nice to
collect them all and see how this is solved best, and if it's in scope for
1.5 at all.
Alexander Limi · Interaction Architect · Plone Solutions
Development · Training · Support · http://www.plonesolutions.com
Plone Co-Founder · http://plone.org · Connecting Content
More information about the Zope-CMF