Index: openacs-4/packages/acs-core-docs/www/subsites-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites-requirements.html,v diff -u -r1.15 -r1.15.2.1 --- openacs-4/packages/acs-core-docs/www/subsites-requirements.html 11 Nov 2003 10:28:27 -0000 1.15 +++ openacs-4/packages/acs-core-docs/www/subsites-requirements.html 21 Nov 2003 11:14:10 -0000 1.15.2.1 @@ -1,8 +1,7 @@ -
-by Rafael H. Schloming and Dennis Gregorovic
+
By Rafael H. Schloming and Dennis Gregorovic
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -The following is a requirements document for OpenACS 4 Subsites, part of the OpenACS 4 Kernel. The Subsites system allows one OpenACS server instance to serve multiple user communities, by enabling the suite of available OpenACS applications to be customized for defined user communities.
Many online communities are also collections of discrete subcommunities, @@ -26,20 +25,20 @@ users:
Package programmers (referred to as 'the programmer') must develop subcommunity-aware applications.
Site administrators (referred to as 'the administrator') use subsites to provide tailored "virtual websites" to different -subcommunities.
Joe Programmer is working on the bboard package and wants to make it +subcommunities.
Joe Programmer is working on the forum package and wants to make it subsite-aware. Using [ad_conn package_id], Joe adds code that only displays -bboard messages associated with the current package instance. Joe is happy to +forum messages associated with the current package instance. Joe is happy to realize that ad_parameter is already smart enough to return configuration parameters for the current package instance, and so he has to do no extra work to tailor configuration parameters to the current subsite.
Jane Admin maintains www.company.com. She learns of Joe's work and -would like to set up individual bboards for the Boston and Austin offices of +would like to set up individual forums for the Boston and Austin offices of her company. The first thing she does is use the APM to install the new -bboard package.
Next, Jane uses the Subsite UI to create subsites for the Boston and -Austin offices. Then Jane uses the Subsite UI to create bboards for each -office.
Now, the Boston office employees have their own bboard at -http://www.company.com/offices/boston/bboard, and similarly for the Austin +forum package.
Next, Jane uses the Subsite UI to create subsites for the Boston and +Austin offices. Then Jane uses the Subsite UI to create forums for each +office.
Now, the Boston office employees have their own forum at +http://www.company.com/offices/boston/forum, and similarly for the Austin office. At this point, the Boston and Austin office admins can customize the -configurations for each of their bboards, or they can just use the +configurations for each of their forums, or they can just use the defaults.
Test plan (Not available yet)
A subsite API is required for programmers to ensure their packages are subsite-aware. The following functions should be sufficient for this:
10.10.0 Package creation
The system must provide an API call to create a package, and it must be possible for the context (to which the package belongs) to be specified.
10.20.0 Package deletion
The system must provide an API call to delete a package and all related