[Zope] Newbie zope site architecture question

Steven Turoff steveturoff@home.com
Fri, 19 Oct 2001 20:11:10 -0500


Greetings,

I am building an extranet for customers using Zope. Being new to Zope, I'm 
still trying to figure out the best way to organize this. Here are the 
basic requirements:

1) All content is private - every customer must have a username and password.
2) After login, the customer is taken to their section. The basic format 
and design of each customer's section is the same. For the purposes of this 
email, let's assume that each customer has the following sections:
	a) projects - a place where I can post information (html pages, Word 
documents, Excel documents, ...) pertaining to each project that I am 
working on for the customer. A customer may have multiple projects going 
on, each of which has a set of documents associated with it.
	b) schedule - a place where I can post a schedule for the customer
	c) documents - a place where the customer and I can both post documents
3) Adding new sections, for example, 'news', should not cause any problems 
with old customers. For example, if I have thirty existing customers that 
each have the three sections listed above, and then I decide that I want to 
add a 'news' section, I should not have to add thirty zope folders to 
accomodate the existing customers (or there should be an easy way of doing 
this.)
4) Adding new customers should be easy
5) Customers have view access to everything in their section, and write 
access to certain parts.
6) There will be some generic sections (for example, Annoucements) where 
the information is the same for all clients.

I have a good idea of how I would build this using other technologies 
(e.g., jsp and mySQL), but am not sure how to organize it using 
Zope.  Should I create folders for each customer, folders for each section, 
or both? Should I put the actual data for each customer into a relational 
database and retrieve it from there? I've read the Zope Book and am 
confident that I can figure out a good way of accomplishing all of this, 
but I would like to benefit from other's experience, if possible. Any help 
would be much appreciated.

Steve