[Zope-PTK] Membership packaging

Kevin Dangoor kid@kendermedia.com
Mon, 5 Jun 2000 11:14:45 -0400


----- Original Message -----
From: "Andrew Kenneth Milton" <akm@mail.theinternet.com.au>
To: "Phillip J. Eby" <pje@telecommunity.com>
Cc: "Kevin Dangoor" <kid@kendermedia.com>; <zope-ptk@zope.org>
Sent: Monday, June 05, 2000 12:28 AM
Subject: Re: [Zope-PTK] Membership packaging


> +----[ Phillip J. Eby ]---------------------------------------------
> | At 12:23 PM 6/5/00 +1000, Andrew Kenneth Milton wrote:
> | >o Membership Manager
> | >     which handles roles and stuff like mailing out passwords
> | >     if you've stored them in plain text, or providing the 'hint'
questions
> | >     if you've stored them encrypted.
> |
> | The idea here is that you add methods for this on LoginManager's
"Methods"
> | tab.  They can be DTML methods/documents representing pages that people
go
> | to, or other kinds of methods that are called from elsewhere in the
> | application.  And of course the portal manager/developer is free to
define
> | and place additional methods here that are specific to their portal's
needs.
>
> I would prefer to see (Python) product plugins available rather than
simply
> adding 'pages.' I'm not putting down what we have, I would just like to
see
> something different. I have a different set of requirements, in that I
> normally have to provide turn-key solutions to 3rd parties. DTML Methods
> as development simply don't cut it, and certainly don't make for easy
> to bundle solutions.

I think that the UI stuff will probably vary from Portal to Portal. For
example, the "Join" form will have to change depending on what data the
portal demands of the user. Consequently, you may as well just automatically
create a bunch of methods that are modifiable by the site manager. I think
there should also be a way to revert to the default method, to provide a way
to try out UI improvements that are made in the product.

The "easy to bundle" part is basically that extra Membership constructor.
You'll just decide to add a Membership system and it will create all of the
methods for you.

> Try developing two different Portals using PTK and one Zope Instance.
> Zclasses make this an exquisite pain in the arse, you can't copy and
> paste the sub-classes between Products. And you can't import the
> PTKDemo stuff more than once. You can't edit the PTKDemo stuff because
> its pickled.

This is an implementation issue with the current PTK, and this is why I'd
like to see the PTK pieces broken out into components that are available
separately and as a package and are all individually configurable. I think
what we're talking about here fits the bill.

ZopeRoot/
  acl_users
  OtherPortal/
     acl_users

Let's say you add a Membership system at the ZopeRoot and another for
another portal at "OtherPortal". The acl_users at the ZopeRoot will have its
own set of UI methods that you can edit to tailor for that site. You can
also use an LDAPAttributes plugin to grab more data for that user. The
acl_users at OtherPortal again has its own UI methods that you can use as
you wish, and might have an SQLSheet plugin that grabs a propertysheet worth
of data from an SQL database.

To me, this seems like a very flexible system that handles multiple
Membership systems on one or more Zope instances just fine...

> Whilst ZPatterns are used by the LoginManager now and the PTK uses
> LoginManager, that isn't to say that this will always be the case, and I
> just want to get my requests for User Management functionality stated, I
> am not denegrating ZPatterns or the LoginManager.
>
> Whilst you can say "the CVS version does this now" I cannot develop
> products using the CVS version, I can only develop using released
> products because clients don't know, and don't want to know about CVS,
> they want to see somewhere where they can obtain that software because
> it makes them feel better about the tools that are in use.

Actually, LoginManager is a released product, and I believe it works with
2.1.6 and 2.2. It just doesn't have all of the UI niceties attached to it.
There really isn't any released product that has everything you're asking
for in a ready-to-go package, as far as I know.

If there is something specific that LoginManager + a package of editable UI
methods does not solve, I agree that we should address that...

Kevin