[Zope] Is there a way to have users add themselves to a role?
Dieter Maurer
dieter@handshake.de
Sat, 5 Apr 2003 08:11:30 +0200
Russell Hires wrote at 2003-4-3 23:22 -0500:
> ...
> I'm playing with plone, but this is really a zope question. At the moment, I
> want to give my users the ability to choose whether or not they receive an
> email when a certain object type is published. The way I'm looking at doing
> this is to allow the user to choose whether they have a certain role or not.
That's quite an indirect approach. Roles have not been designed for this
use case.
In my view, it would be more natural to have a user attribute
or a relation "subscribed", holding subscription information for
all users and email services.
> Naturally, these would be custom roles, but I want the user to decide
> (without my intervention) on if that person wants to have that role.
It is difficult:
The "AccessControl.User.BasicUser" API does not provide for
a method to modify roles alone, only a method to change
the user definition as a whole, including password.
You can implement it (in an External Method) for non-encrypted passwords
or for a given UserFolder (by using internal implementation specific
knowledge).
Go a different way...
Dieter