[Zope-CMF] CMF for intranets, CMF inside CMF etc

Jon Edwards jon@pcgs.freeserve.co.uk
Fri, 8 Feb 2002 17:41:36 -0000


> Anybody got any hints/pointers on using CMF for building
> intranets? It is a perfect fit in my - so far limited -
> knowledge about it. But I can't figure out a way to
> satisfy the following structure

Hi Babu,

I've been working on similar problems for a while. I'll be releasing an
add-on/product, for CMF 1.2/ZPT, soon at http://www.medzope.org (don't
bother with the current donload, it's pretty old and clunky DTML) - but if
you want my code in the meantime, I'll happily share it. I'm using your
IEEditor, so it's only fair! ;-)

(NB. though we're targetting healthcare orgs, the underlying code is pretty
generic)

The approach I've taken is to have one CMF instance (rather than
CMFs-within-CMFs), but to create an "Organisation" (or "Department" for
intranets) type - similar to PortalContentFolder
(http://www.zope.org/Members/efge/PortalContentFolder) so that it is
workflow- and catalog-aware.

Then sub-classed the CatalogTool (see Seb's how-to
http://cmf.zope.org/Members/seb/CreateCatalogTool/view) so it stores the
org_id of each object - plus a few other properties like 'parentfolder',
'org_type' and 'menusortorder' that make it easier to do navigation,
sorting, searching, etc. Storing them in the catalog means you don't have to
hack each content-type just to add a few properties.

As far as the Members stuff goes, we found that clients wanted most intranet
content to be available to all users - though stored in "Departments" to
make it easier to navigate. I'm planning to follow Seb's thoughts and create
"Workgroups" for those areas that need special access restrictions (see the
FAQs on the Dogbowl)

We're setting up a Calendar/Events folder for each dept, with a "Today's
Events" frontpage (which I'm still struggling to get the catalog-query for!
:-) ...then a summary at root of all Today's Events for all depts. - you can
use the Subject values for Events to give different types - vacation,
meeting, etc - though I think I'm going to use the types-tool to create
different types from Event.

You can have different a stylesheet for any folder. I want to also make it
so that you can pick a different main_template for different levels, but
haven't worked out how to do that with ZPT yet - cos all the xxxx_view
methods have the main_template name hardcoded in their header, and I don't
think you can replace that with a variable?

Anyway, enough rambling, hope that helps! :-)

Cheers, Jon