Index: openacs-4/packages/acs-core-docs/www/acs-admin.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/acs-admin.html,v diff -u -N -r1.15 -r1.16 --- openacs-4/packages/acs-core-docs/www/acs-admin.html 28 Oct 2003 22:07:33 -0000 1.15 +++ openacs-4/packages/acs-core-docs/www/acs-admin.html 31 Oct 2003 10:54:19 -0000 1.16 @@ -1 +1 @@ -
Table of Contents
Table of Contents
Tutorials and reference material for creating new OpenACS packages. -
Table of Contents
Tutorials and reference material for creating new OpenACS packages. +
Table of Contents
Table of Contents
Prev | Home | Next |
Appendix�E.�How to package and release OpenACS | Up | Platform Development |
Table of Contents
Prev | Home | Next |
Appendix�E.�How to package and release OpenACS | Up | Platform Development |
+
by Vinod Kurup
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
@@ -66,17 +66,17 @@
communicate with the database. There is one script each for
Oracle and PostGreSQL. They don't conflict, so if you plan
to use both databases, install both.
Oracle
[root@yourserver aolserver]# cd /usr/local/aolserver/bin
-[root@yourserver bin]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
+[root@yourserver bin]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
[root@yourserver bin]# chmod 750 nsd-oracle
[root@yourserver bin]#
cd /usr/local/aolserver/bin
-cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
+cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
chmod 750 nsd-oracle
PostGreSQL
[root@yourserver aolserver]# cd /usr/local/aolserver/bin
-[root@yourserver bin]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
+[root@yourserver bin]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
[root@yourserver bin]# chmod 755 nsd-postgres
[root@yourserver bin]#
cd /usr/local/aolserver/bin
-cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
+cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
chmod 755 nsd-postgres
Install tDOM.�Download the tDOM tarball to /tmp/tDOM-0.7.7.tar.gz, @@ -211,4 +211,4 @@ set hostname [ns_info hostname] #set address [ns_info address] set address 0.0.0.0
Install - Analog web file analyzer. (OPTIONAL)
+
by Bryan Quinn
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
-
Tcl API
Tcl API
apm-install-procs.tcl (Supports installation of packages)
20-apm-load-procs.tcl (Bootstraps APM for server startup)
OpenACS Services: the aforementioned building blocks. Examples of services include the OpenACS Content Repository, the OpenACS Templating -System, and the OpenACS Kernel, which includes +System, and the OpenACS Kernel, which includes APM.
An installation of the OpenACS includes the OpenACS Kernel, some services that extend the kernel's functionality, and some applications intended for end-users. Packages function as individual pieces of subsites. A subsite can contain multiple @@ -88,7 +88,7 @@ packages for other ACS users to download and install.
For a simple illustration of the difference between ACS without APM (pre-3.3) and ACS with APM (3.3 and beyond), consider a hypothetical ACS installation that uses only two of the thirty-odd modules available circa ACS -3.2 (say, bboard and e-commerce):
APM itself is part of a package, the OpenACS Kernel, an OpenACS +3.2 (say, bboard and e-commerce):
APM itself is part of a package, the OpenACS Kernel, an OpenACS service that is the only mandatory component of an OpenACS installation.
The OpenACS is a platform for web-based application software, and any software platform has the potential to develop problems like those described above. Fortunately, there are many precedents for systematic solutions, @@ -541,4 +541,4 @@ all of this functionality in one interface and it can be confusing from a usability perspective.
System creator: Bryan Quinn, Jon Salz, Michael Yoon, Lars Pind, Todd Nightingale.
System owner: Bryan Quinn
Documentation author: Bryan Quinn, building from earlier versions by Jon -Salz, Michael Yoon, and Lars Pind.
+
by Bryan Quinn and Todd Nightingale
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
@@ -154,7 +154,7 @@
adding new files, by scanning the file system for new files automatically,
and allowing the developer to confirm adding them.
20.10 The developer cannot add files to a given package via the UI that do not exist in the file system already.
20.15 Package file structure must follow a specified -convention. Please see the design +convention. Please see the design document for what we do currently.
30.0 Remove files from a package
The developer must be able to remove files from a package. This can be done in two ways.
30.1 Access the APM UI, browse the file list, and remove files.
30.1.1If a file is removed from the package list, but not @@ -292,4 +292,4 @@ are set using the acs_attribute_values table. The automatic web interface for setting package parameters should be one and the same with the interface for setting acs object attribute values. Consequently, the implementation of -these features should be quite straightforward.
Document Revision # | Action Taken, Notes | When? | By Whom? |
0.1 | Creation | 8/10/2000 | Bryan Quinn, Todd Nightingale |
� | Reviewed | 8/11/2000 | John Prevost, Mark Thomas, and Pete Su |
0.2 | Revised and updated | 8/12/2000 | Bryan Quinn |
0.3 | Reviewed, revised, and updated - conforms to requirements template. | 8/18/2000 | Kai Wu |
0.4 | Minor edits before ACS 4 Beta. | 9/30/2000 | Kai Wu |
Prev | Home | Next |
OpenACS 4 Subsites Design Document | Up | OpenACS 5.0.0a1 Package Manager Design |
Document Revision # | Action Taken, Notes | When? | By Whom? |
0.1 | Creation | 8/10/2000 | Bryan Quinn, Todd Nightingale |
� | Reviewed | 8/11/2000 | John Prevost, Mark Thomas, and Pete Su |
0.2 | Revised and updated | 8/12/2000 | Bryan Quinn |
0.3 | Reviewed, revised, and updated - conforms to requirements template. | 8/18/2000 | Kai Wu |
0.4 | Minor edits before ACS 4 Beta. | 9/30/2000 | Kai Wu |
Prev | Home | Next |
OpenACS 4 Subsites Design Document | Up | OpenACS 5.0.0a4 Package Manager Design |
+
by Don Baccus
with additions by Joel Aufrecht
@@ -143,7 +143,7 @@
single nightly backup file which is then collected into a
bigger backup file that includes the other parts of the
service (web pages, content, code). To make a new file every
- night, edit the crontab file for service0:
[service0@yourserver service0]$ export EDITOR=emacs;crontab -e
Add this line to the file. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day.
0 1 * * * /usr/local/pgsql/bin/pg_dump -f /var/lib/aolserver/service0/database-backup/service0_`date +\%Y-\%m-\%d`.dmp service0
If you plan to back up the whole /var/lib/aolserver/service0 directory, then it would be redundant to keep a history of database backups. In that case, set up the cron job to overwrite the previous backup each time:
0 1 * * * /usr/local/pgsql/bin/pg_dump -f /var/lib/aolserver/service0/database-backup/service0_nightly.dmp service0
On a test service, make sure that your backup-recovery process work. After backing up the database and file system, delete the service as detailed below and then recover it.
[root@yourserver root]# svc -d /service/service0 + night, edit the crontab file for service0:[service0@yourserver service0]$ export EDITOR=emacs;crontab -eAdd this line to the file. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day.
0 1 * * * /usr/local/pgsql/bin/pg_dump -f /var/lib/aolserver/service0/database-backup/service0_`date +\%Y-\%m-\%d`.dmp service0If you plan to back up the whole /var/lib/aolserver/service0 directory, then it would be redundant to keep a history of database backups. In that case, set up the cron job to overwrite the previous backup each time:
0 1 * * * /usr/local/pgsql/bin/pg_dump -f /var/lib/aolserver/service0/database-backup/service0_nightly.dmp service0
On a test service, make sure that your backup-recovery process work. After backing up the database and file system, delete the service as detailed below and then recover it.
[root@yourserver root]# svc -d /service/service0 [root@yourserver root]# mv /var/lib/aolserver/service0/ /var/lib/aolserver/service0.lost [root@yourserver root]# rm /service/service0 rm: remove symbolic link `/service/service0'? y Index: openacs-4/packages/acs-core-docs/www/bootstrap-acs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/bootstrap-acs.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/bootstrap-acs.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/bootstrap-acs.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -Bootstrapping OpenACS +
Bootstrapping OpenACS by Jon Salz
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/complete-install.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/complete-install.html,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/complete-install.html 28 Oct 2003 22:18:46 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/complete-install.html 31 Oct 2003 10:54:19 -0000 1.2 @@ -1 +1 @@ -Chapter�4.�Complete Installation
Prev Home Next Individual Programs Up Install Unix-like system and supporting software
docs@openacs.orgView comments on this page at openacs.org +Chapter�3.�Complete Installation
Prev Home Next Prerequisite Software Up Install Unix-like system and supporting software
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/configure.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/configure.html,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/configure.html 28 Oct 2003 22:07:33 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/configure.html 31 Oct 2003 10:54:19 -0000 1.5 @@ -1 +1 @@ -Chapter�5.�Configuring a New Service View comments on this page at openacs.org +Chapter�4.�Configuring a New Service View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/cvs-service-import.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/cvs-service-import.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/cvs-service-import.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/cvs-service-import.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -1,4 +1,4 @@ -Add the Service to CVS - OPTIONAL These steps take an existing OpenACS directory and add +
Add the Service to CVS - OPTIONAL These steps take an existing OpenACS directory and add it to a CVS repository..
Create and set permissions on a subdirectory in the local cvs repository.
[root@yourserver root]# mkdir /cvsroot/service0 [root@yourserver root]# chown service0.web /cvsroot/service0 @@ -17,11 +17,11 @@ plus this string, i.e. /cvsroot/service0. - "OpenACS" is the vendor tag, and "openacs-5-0-0a1" is the + "OpenACS" is the vendor tag, and "openacs-5-0-0a4" is the release tag. These tags will be useful in upgrading and branching. -m sets the version comment.[root@yourserver root]# su - service0 [service0@yourserver service0]$ cd /web/service0 -[service0@yourserver service0]$ cvs import -m "initial install" service0 OpenACS openacs-5-0-0a1 +[service0@yourserver service0]$ cvs import -m "initial install" service0 OpenACS openacs-5-0-0a4 N service0/license.txt N service0/readme.txt (many lines omitted) @@ -32,7 +32,7 @@ [service0@yourserver service0]$su - service0 cd /web/service0 -cvs import -m "initial install" service0 OpenACS openacs-5-0-0a1
Move the original directory to a temporary location, and check out the cvs repository in its place. If the service starts correctly, come back and remove the temporary copy of the uploaded files.
[service0@yourserver service0]$ cd .. +cvs import -m "initial install" service0 OpenACS openacs-5-0-0a4
Move the original directory to a temporary location, and check out the cvs repository in its place. If the service starts correctly, come back and remove the temporary copy of the uploaded files.
[service0@yourserver service0]$ cd .. [service0@yourserver web]$ mv service0 service0.orig [service0@yourserver web]$ cvs checkout service0 cvs checkout: Updating service0 Index: openacs-4/packages/acs-core-docs/www/cvs-tips.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/cvs-tips.html,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/cvs-tips.html 28 Oct 2003 22:07:33 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/cvs-tips.html 31 Oct 2003 10:54:19 -0000 1.5 @@ -1,5 +1,5 @@ -Appendix�D.�Using CVS with an OpenACS Site Table of Contents
+
Appendix�D.�Using CVS with an OpenACS Site Table of Contents
by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -View comments on this page at openacs.org +View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/database-management.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/database-management.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/database-management.html 28 Oct 2003 22:18:46 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/database-management.html 31 Oct 2003 10:54:19 -0000 1.9 @@ -1,4 +1,4 @@ -Database Management +
Database Management by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/db-api-detailed.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/db-api-detailed.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/db-api-detailed.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/db-api-detailed.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -Database Access API +
Database Access API by Jon Salz. Revised and expanded by Roberto Mello (rmello at fslc dot usu dot edu), July 2002.
@@ -730,4 +730,4 @@ The nsv containing the list is initialized by the bootstrap script and should never be referenced directly by user code. Returns the current rdbms type and version. -($Id$)
Prev Home Next OpenACS 5.0.0a1 Package Manager Design Up OpenACS Internationalization Requirements
docs@openacs.orgView comments on this page at openacs.org +($Id$)
Prev Home Next OpenACS 5.0.0a4 Package Manager Design Up OpenACS Internationalization Requirements
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/db-api.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/db-api.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/db-api.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/db-api.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -The OpenACS Database Access API View comments on this page at openacs.org +View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/dev-guide.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/dev-guide.html,v diff -u -N -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/dev-guide.html 28 Oct 2003 22:07:33 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/dev-guide.html 31 Oct 2003 10:54:19 -0000 1.15 @@ -1 +1 @@ -Chapter�9.�Development Reference Table of Contents
- OpenACS 5.0.0a1 Packages
- OpenACS Data Models and the Object System
- The Request Processor
- The OpenACS Database Access API
- Using Templates in OpenACS 5.0.0a1
- Groups, Context, Permissions
- Writing OpenACS 5.0.0a1 Application Pages
- Parties in OpenACS 5.0.0a1
- OpenACS 4.x Permissions Tediously Explained
- Object Identity
- Programming with AOLserver
View comments on this page at openacs.org +Chapter�8.�Development Reference Table of Contents
- OpenACS 5.0.0a4 Packages
- OpenACS Data Models and the Object System
- The Request Processor
- The OpenACS Database Access API
- Using Templates in OpenACS 5.0.0a4
- Groups, Context, Permissions
- Writing OpenACS 5.0.0a4 Application Pages
- Parties in OpenACS 5.0.0a4
- OpenACS 4.x Permissions Tediously Explained
- Object Identity
- Programming with AOLserver
View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/docbook-primer.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/docbook-primer.html,v diff -u -N -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/docbook-primer.html 28 Oct 2003 22:18:46 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/docbook-primer.html 31 Oct 2003 10:54:19 -0000 1.18 @@ -1,8 +1,8 @@ -OpenACS Documentation Guide +
OpenACS Documentation Guide By claus@arsdigita.com, with additions by Roberto Mello and the OpenACS Community -
+
ArsDigita created a good documentation ground for us to build upon. Some sections of the documentation, however, lack details and examples; others are simply nonexistant. Our goal is to give @@ -31,7 +31,7 @@ In order to separate content and presentation, all OpenACS documentation will be marked up to conform to the DocBook XML DTD - + This enables us to publish in a variety of formats and relieves each contributor of the burden of presentation, freeing him to focus on content and sharing knowledge. @@ -52,7 +52,7 @@ list of elements and use more exotic features in your documents. The list is made up of SGML-elements but basically the same elements are valid in the XML DTD as long as you remember to: - +
Always close your tags with corresponding end-tags and to not use other tag minimization @@ -98,7 +98,7 @@ The documentation for each package will make up a little "book" that is structured like this - examples are emphasized: - +
book : Docs for one package - templating @@ -122,20 +122,20 @@ sources of these DocBook documents to get an idea of how they are tied together.- + Given that your job starts at the sect1-level, all your documents should open with a <sect1>-tag and end with the corresponding </sect1>.
- + You need to feed every <sect1> two attributes. The first attribute, id, is standard and can be used with all elements. It comes in very handy when interlinking between documents (more about this when talking about links in Section�, “Links”). The value of id has to be unique throughout the book you're making since the id's in your sect1's will turn into filenames when the book is parsed into HTML.
- + The other attribute is xreflabel. The value of this is the text that will appear as the link when referring to this sect1.
@@ -150,7 +150,7 @@ </sect1>
- + Inside this container your document will be split up into <sect2>'s, each with the same requirements - id and xreflabel @@ -159,7 +159,7 @@ When it comes to naming your sect2's and below, prefix them with some abbreviation of the id in the sect1 such as requirements-overview.
- + For displaying a snippet of code, a filename or anything else you just want to appear as a part of a sentence, we will use the tag <computeroutput>. @@ -169,12 +169,12 @@ <programlisting> is used. Just wrap your code block in it; mono-spacing, indents and all that stuff is taken care of automatically.
- + Linking falls into two different categories: inside the book you're making and outside:
- 1. Inside linking, cross-referencing other parts of your book
By having unique id's you can cross-reference any part of your book with a simple tag, regardless of where that part is. -
Check out how I link to a subsection of the Developer's Guide:
+Check out how I link to a subsection of the Developer's Guide:
Put this in your XML: @@ -212,7 +212,7 @@ packages-looks, the parser will try its best to explain where the link takes you.- 2. Linking outside the documentation
- + If you're hyper-linking out of the documentation, it works almost the same way as HTML - the tag is just a little different @@ -233,7 +233,7 @@ do it, so if you want to start converting your documents right away, start out with the ones without graphics ;)
- + To insert a graphic we use the elements <mediaobject>, <imageobject>, @@ -259,7 +259,7 @@ Put your graphics in a separate directory ("images") and link to them only with relative paths.
- + Here's how you make the DocBook equivalent of the three usual HTML-lists:
- 1. How to make an <ul>
Making an unordered list is pretty much like doing the same thing in HTML - if you close your <li>, that is. The only differences are that each list item has to be wrapped in something more, such as @@ -304,7 +304,7 @@ </variablelist>
- + DocBook supports several types of tables, but in most cases, the <informaltable> is enough: @@ -341,7 +341,7 @@ <table> for an example.
- + Our documentation uses two flavors of emphasis - italics and bold type. DocBook uses one - <emphasis>.
@@ -420,4 +420,4 @@
8/3/2002 Vinod Kurup 0.3 Added OpenACS information, updated tools, added extra links and added info to the Publishing section. - 12/24/2001 Roberto Mello 0.2 Changed recommendation from <phrase> to <emphasis role="strong"> 01/19/2000 Claus Rasmussen 0.1 Creation 12/2000 Claus Rasmussen View comments on this page at openacs.org +12/24/2001 Roberto Mello 0.2 Changed recommendation from <phrase> to <emphasis role="strong"> 01/19/2000 Claus Rasmussen 0.1 Creation 12/2000 Claus Rasmussen View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/eng-standards-constraint-naming.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -Constraint naming standard
+Constraint naming standard
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.Index: openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/eng-standards-filenaming.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -
ACS File Naming and Formatting Standards By michael@arsdigita.com and +
ACS File Naming and Formatting Standards By michael@arsdigita.com and aure@arsdigita.com
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/eng-standards-plsql.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -PL/SQL Standards +
PL/SQL Standards By richardl@arsdigita.com and yon@arsdigita.com
Index: openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/eng-standards-versioning.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -Release Version Numbering
+Release Version Numbering
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.Index: openacs-4/packages/acs-core-docs/www/eng-standards.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/eng-standards.html,v diff -u -N -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/eng-standards.html 28 Oct 2003 22:07:34 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/eng-standards.html 31 Oct 2003 10:54:19 -0000 1.13 @@ -1 +1 @@ -
Chapter�10.�Engineering Standards Table of Contents
- OpenACS Documentation Guide
- Using PSGML mode in Emacs
- Detailed Design Documentation Template
- System/Application Requirements Template
- Release Version Numbering
- Constraint naming standard
- ACS File Naming and Formatting Standards
- PL/SQL Standards
- D. Using CVS with an OpenACS Site
- E. How to package and release OpenACS
View comments on this page at openacs.org +Chapter�9.�Engineering Standards View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html,v diff -u -N -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html 28 Oct 2003 22:18:46 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/ext-auth-requirements.html 31 Oct 2003 10:54:19 -0000 1.6 @@ -1,4 +1,4 @@ -External Authentication Requirements People have plenty of usernames and passwords already, we +
External Authentication Requirements People have plenty of usernames and passwords already, we don't want them to have yet another. We want people to be able to log in to OpenACS with the same password they use to log in to any other system.
Besides, administrators have better things to do than create @@ -44,7 +44,7 @@ only one implementation of the authentication API, namly the one included in OpenACS Core.
Authentication Driver API: The service contract which authentication drivers implement.
Authentication:
-
Account Management (NO PICTURE YET)
Batch Synchronization (NO PICTURE YET)
Feature Status Description EXT-AUTH-01 A Extend Authentication/Acct Status API EXT-AUTH-03 A Account Creation API EXT-AUTH-05 A Password Management API EXT-AUTH-30 A Authority Management API
Feature Status Description EXT-AUTH-04 A Rewrite login, register, and admin pages to use APIs EXT-AUTH-38 A ad_form complain feature EXT-AUTH-19 A Rewrite password recovery to use API EXT-AUTH-21 A Rewrite email verification with API EXT-AUTH-28 A Username is email switch Users will log in using a username, a authority, and a +
Account Management (NO PICTURE YET)
Batch Synchronization (NO PICTURE YET)
Feature Status Description EXT-AUTH-01 A Extend Authentication/Acct Status API EXT-AUTH-03 A Account Creation API EXT-AUTH-05 A Password Management API EXT-AUTH-30 A Authority Management API
Feature Status Description EXT-AUTH-04 A Rewrite login, register, and admin pages to use APIs EXT-AUTH-38 A ad_form complain feature EXT-AUTH-19 A Rewrite password recovery to use API EXT-AUTH-21 A Rewrite email verification with API EXT-AUTH-28 A Username is email switch Users will log in using a username, a authority, and a password. The authority is the source for user/password verification. OpenACS can be an authority itself.
Each user in OpenACS will belong to exactly one authority, which can either be the "local" OpenACS users table, in which case the Index: openacs-4/packages/acs-core-docs/www/filename.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/filename.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/filename.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/filename.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,4 +1,4 @@ -
Detailed Design Documentation Template By You
+
Detailed Design Documentation Template By You
NOTE: Some of the sections of this template may not apply to your package, e.g. there may be no user-visible UI elements for a component of the OpenACS Core. Furthermore, it may be easier in some circumstances @@ -114,7 +114,7 @@ within the OpenACS, this section's details are likely to shift from UI specifics to template interface specifics.
- Under OpenACS 5.0.0a1, parameters are set at two levels: at the global level by + Under OpenACS 5.0.0a4, parameters are set at two levels: at the global level by the OpenACS-admin, and at the subsite level by a sub-admin. In this section, list and discuss both levels of parameters.
Index: openacs-4/packages/acs-core-docs/www/groups-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/groups-design.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/groups-design.html 28 Oct 2003 22:07:34 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/groups-design.html 31 Oct 2003 10:54:19 -0000 1.14 @@ -1,4 +1,4 @@ -
OpenACS 4 Groups Design +
OpenACS 4 Groups Design by Rafael H. Schloming and Mark Thomas
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/groups-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/groups-requirements.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/groups-requirements.html 28 Oct 2003 22:07:34 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/groups-requirements.html 31 Oct 2003 10:54:19 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Groups Requirements +
OpenACS 4 Groups Requirements by Rafael H. Schloming, Mark Thomas
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/how-to-use.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/how-to-use.html,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/how-to-use.html 28 Oct 2003 22:18:46 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/how-to-use.html 31 Oct 2003 10:54:19 -0000 1.2 @@ -17,7 +17,7 @@ dropdb server1 createdb server1Figure�2.2.�Assumptions in this section
+ files are located at:
/tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files Database backup directory /var/lib/aolserver/service0/database-backup Service config files /var/lib/aolserver/service0/etc Service log files /var/lib/aolserver/service0/log Compile directory /usr/local/src PostGreSQL directory /usr/local/pgsql AOLServer directory /usr/local/aolserver None of these locations are set in stone - they're simply the values that we've chosen. The values that you'll probably want to change, such as service name, are Index: openacs-4/packages/acs-core-docs/www/i18n-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n-requirements.html,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/acs-core-docs/www/i18n-requirements.html 28 Oct 2003 22:07:34 -0000 1.4 +++ openacs-4/packages/acs-core-docs/www/i18n-requirements.html 31 Oct 2003 10:54:19 -0000 1.5 @@ -1,4 +1,4 @@ -
OpenACS Internationalization Requirements +
OpenACS Internationalization Requirements by Henry Minsky, Yon Feldman, Lars Pind, Index: openacs-4/packages/acs-core-docs/www/i18n.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/i18n.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/i18n.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/i18n.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -1,4 +1,4 @@ -
Internationalization +
Internationalization By Peter Marklund and Lars Pind
@@ -38,7 +38,7 @@ which are static and mostly text, it may be easier to create a new ADP page for each language. In this case, the pages are distinguished by a file naming convention. -If the request processor finds a file named filename.locale.adp, where locale matches the user's locale, it will process that file instead of filename.adp. For example, for a user with locale tl_PH, the file index.tl_PH.adp, if found, will be used instead of index.adp. The locale-specific file should thus contain text in the language appropriate for that locale. The code in the page, however, should still be in English. Message keys are still processed.
+
If the request processor finds a file named filename.locale.adp, where locale matches the user's locale, it will process that file instead of filename.adp. For example, for a user with locale tl_PH, the file index.tl_PH.adp, if found, will be used instead of index.adp. The locale-specific file should thus contain text in the language appropriate for that locale. The code in the page, however, should still be in English. Message keys are still processed.
Internationalizing templates is about replacing human readable text in a certain language with internal message keys, which can then be dynamically replaced with real human language in @@ -101,9 +101,9 @@
Here are a couple of examples. Say we have the following two parameters, taken directly from the dotlrn package. -
Table�11.1.�
Parameter Name Parameter Value class_instance_pages_csv #dotlrn.class_page_home_title#,Simple 2-Column;#dotlrn.class_page_calendar_title#,Simple 1-Column;#dotlrn.class_page_file_storage_title#,Simple 1-Column departments_pretty_name #departments_pretty_name# +
Table�10.1.�
Parameter Name Parameter Value class_instance_pages_csv #dotlrn.class_page_home_title#,Simple 2-Column;#dotlrn.class_page_calendar_title#,Simple 1-Column;#dotlrn.class_page_file_storage_title#,Simple 1-Column departments_pretty_name #departments_pretty_name# Then, depending on how we retrieve the value, here's what we get: -
Table�11.2.�
Command used to retrieve Value Retrieved Value parameter::get -localize -parameter class_instances_pages_csv Kurs Startseite,Simple 2-Column;Kalender,Simple 1-Column;Dateien,Simple 1-Column parameter::get -localize -parameter departments_pretty_name Abteilung parameter::get -parameter departments_pretty_name #departments_pretty_name# +
Table�10.2.�
Command used to retrieve Value Retrieved Value parameter::get -localize -parameter class_instances_pages_csv Kurs Startseite,Simple 2-Column;Kalender,Simple 1-Column;Dateien,Simple 1-Column parameter::get -localize -parameter departments_pretty_name Abteilung parameter::get -parameter departments_pretty_name #departments_pretty_name# The value in the rightmost column in the table above is the value returned by an invocation of parameter::get. Note that for localization to happen you must use the -localize flag. @@ -151,7 +151,7 @@ Use the *_pretty version in your ADP page.
To internationalize numbers, use lc_numeric $value, which formats the number using the appropriate decimal point and thousand separator for the locale. -
When coding forms, remember to use message keys for each piece of text that is user-visible, including form option labels and button labels.
When coding forms, remember to use message keys for each piece of text that is user-visible, including form option labels and button labels.
Acs-lang includes tools to automate some internationalization. From /acs-admin/apm/, select a package and then click on @@ -240,9 +240,9 @@ with the appropriate notation for the type of file, and store the text in the message catalog. You need to run the process twice, once for ADP files, and once for Tcl files. -
Find datetime in .xql files. Use command line tools to find suspect SQL code:
grep -r "to_char.*H" * +
Find datetime in .xql files. Use command line tools to find suspect SQL code:
grep -r "to_char.*H" * grep -r "to_date.*H" *In SQL statements, replace the format string with the ANSI standard format, YYYY-MM-DD HH24:MI:SS and change the field name to *_ansi so that it cannot be confused with previous, improperly formatting fields. For example,
to_char(timestamp,'MM/DD/YYYY HH:MI:SS') as foo_date_prettybecomes
to_char(timestamp,'YYYY-MM-DD HH24:MI:SS') as foo_date_ansiIn TCL files where the date fields are used, convert the datetime from local server timezone, which is how it's stored in the database, to the user's timezone for display. Do this with the localizing function lc_time_system_to_conn:
set foo_date_ansi [lc_time_system_to_conn $foo_date_ansi]When a datetime will be written to the database, first convert it from the user's local time to the server's timezone with lc_time_conn_to_system. Index: openacs-4/packages/acs-core-docs/www/index.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/index.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/index.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/index.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1 +1 @@ -
OpenACS Core Documentation Table of Contents
- I. OpenACS For Everyone
- II. Administrator's Guide
- III. For OpenACS Package Developers
- 8. Development Tutorial
- 9. Development Reference
- OpenACS 5.0.0a1 Packages
- OpenACS Data Models and the Object System
- The Request Processor
- The OpenACS Database Access API
- Using Templates in OpenACS 5.0.0a1
- Groups, Context, Permissions
- Writing OpenACS 5.0.0a1 Application Pages
- Parties in OpenACS 5.0.0a1
- OpenACS 4.x Permissions Tediously Explained
- Object Identity
- Programming with AOLserver
- 10. Engineering Standards
- IV. For OpenACS Platform Developers
- Platform Development
- 11. Kernel Documentation
- Overview
- OpenACS 4 Object Model Requirements
- OpenACS 4 Object Model Design
- OpenACS 4 Permissions Requirements
- OpenACS 4 Permissions Design
- OpenACS 4 Groups Requirements
- OpenACS 4 Groups Design
- OpenACS 4 Subsites Requirements
- OpenACS 4 Subsites Design Document
- OpenACS 5.0.0a1 Package Manager Requirements
- OpenACS 5.0.0a1 Package Manager Design
- Database Access API
- OpenACS Internationalization Requirements
- Internationalization
- OpenACS 4 Security Requirements
- OpenACS 4 Security Design
- OpenACS 4 Security Notes
- OpenACS 4 Request Processor Requirements
- OpenACS 4 Request Processor Design
- Documenting Tcl Files: Page Contracts and Libraries
- Bootstrapping OpenACS
- External Authentication Requirements
List of Figures
View comments on this page at openacs.org +OpenACS Core Documentation Table of Contents
- I. OpenACS For Everyone
- II. Administrator's Guide
- III. For OpenACS Package Developers
- 7. Development Tutorial
- 8. Development Reference
- OpenACS 5.0.0a4 Packages
- OpenACS Data Models and the Object System
- The Request Processor
- The OpenACS Database Access API
- Using Templates in OpenACS 5.0.0a4
- Groups, Context, Permissions
- Writing OpenACS 5.0.0a4 Application Pages
- Parties in OpenACS 5.0.0a4
- OpenACS 4.x Permissions Tediously Explained
- Object Identity
- Programming with AOLserver
- 9. Engineering Standards
- D. Using CVS with an OpenACS Site
- E. How to package and release OpenACS
- IV. For OpenACS Platform Developers
- Platform Development
- 10. Kernel Documentation
- Overview
- OpenACS 4 Object Model Requirements
- OpenACS 4 Object Model Design
- OpenACS 4 Permissions Requirements
- OpenACS 4 Permissions Design
- OpenACS 4 Groups Requirements
- OpenACS 4 Groups Design
- OpenACS 4 Subsites Requirements
- OpenACS 4 Subsites Design Document
- OpenACS 5.0.0a4 Package Manager Requirements
- OpenACS 5.0.0a4 Package Manager Design
- Database Access API
- OpenACS Internationalization Requirements
- Internationalization
- OpenACS 4 Security Requirements
- OpenACS 4 Security Design
- OpenACS 4 Security Notes
- OpenACS 4 Request Processor Requirements
- OpenACS 4 Request Processor Design
- Documenting Tcl Files: Page Contracts and Libraries
- Bootstrapping OpenACS
- External Authentication Requirements
List of Figures
View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/individual-programs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/individual-programs.html,v diff -u -N -r1.9 -r1.10 --- openacs-4/packages/acs-core-docs/www/individual-programs.html 29 Oct 2003 09:01:10 -0000 1.9 +++ openacs-4/packages/acs-core-docs/www/individual-programs.html 31 Oct 2003 10:54:19 -0000 1.10 @@ -1,4 +1,13 @@ -Individual Programs
OpenACS 5.0.0a1.�The OpenACS tarball comprises the core packages and +
Prerequisite Software + by Joel Aufrecht
+ OpenACS docs are written by the named authors, and may be edited + by OpenACS documentation staff. ++ OpenACS requires, at a minimum, an operating system, database, + and webserver. Many additional programs, such as a Mail + Transport Agent and source control system, are also needed for + a fully effective instance. +
OpenACS 5.0.0a4.�The OpenACS tarball comprises the core packages and many useful additional packages. This includes a full set of documentation. The tarball works with both PostGreSQL and Oracle.
Operating System.�OpenACS is designed for a Unix-like system. It is @@ -30,7 +39,7 @@ distributions.
TCL 8.3 development headers and libraries, OPTIONAL.� The site-wide-search service, OpenFTS, requires these to compile. (Debian users: apt-get install tcl8.3-dev). You need this - to install OpenFTS.
tDOM, REQUIRED.�OpenACS 5.0.0a1 stores + to install OpenFTS.
tDOM, REQUIRED.�OpenACS 5.0.0a4 stores queries in XML files, so we use an AOLserver module called tDOM to parse these files. (This replaces libxml2, which was used prior to 4.6.4.) tDOM is available from http://tdom.org).
Web Server.�The web server handles incoming HTTP requests, provides @@ -40,7 +49,7 @@ running Apache with mod_nsd - see this post.
AOLserver 3.3oacs1, REQUIRED.�Mat Kovach's source distribution of AOLserver, including all of the patches listed below.
Mat Kovach is graciously maintaining an AOLserver distribution that - includes all the patches and modules needed to run OpenACS 5.0.0a1. These + includes all the patches and modules needed to run OpenACS 5.0.0a4. These instructions will describe how to install using his source distribution. He also has binaries for SuSE 7.3 and OpenBSD 2.8 (and perhaps more to come), currently located at uptime.openacs.org. @@ -115,4 +124,5 @@ get patched and development code in between releases) use cvs.
cvs 1.11.2, OPTIONAL.�cvs is included in most unix distributions. You need this if you want to track old versions of your files, do controlled deployment of code from development - to production, or get or contribute development code from openacs.org.
View comments on this page at openacs.org + to production, or get or contribute development code from openacs.org.($Id: software.xml,v 1.8 2003/10/29 + 09:01:09 joela Exp $)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/install-cvs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-cvs.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/install-cvs.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/install-cvs.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -1,4 +1,4 @@ -Initialize CVS (OPTIONAL) CVS is a source control system. Create and initialize a +
Initialize CVS (OPTIONAL) CVS is a source control system. Create and initialize a directory for a local cvs repository.
[root@yourserver tmp]# mkdir /cvsroot [root@yourserver tmp]# cvs -d /cvsroot init [root@yourserver tmp]# Index: openacs-4/packages/acs-core-docs/www/install-daemontools.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-daemontools.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/install-daemontools.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/install-daemontools.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -3,7 +3,7 @@ installed in /package. These commands install daemontools and svgroup. svgroup is a script for granting permissions, to allow users other than root to use daemontools for specific - services.
Install Daemontools
Red Hat
Make sure you have the source tarball in + services.
Install Daemontools
Red Hat
Make sure you have the source tarball in /tmp, or download it. (The -p flag in mkdir causes all implied directories in the path to be made as well.)
(Red Hat 9.0: put @@ -30,7 +30,7 @@ root 13294 0.0 0.1 1352 272 ? S 09:51 0:00 svscan /service root 13295 0.0 0.0 1304 208 ? S 09:51 0:00 readproctitle service errors: ....................................... [root@yourserver root]#
Install a script to grant non-root users permission to - control daemontools services.
[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/svgroup.txt /usr/local/bin/svgroup + control daemontools services.[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/svgroup.txt /usr/local/bin/svgroup [root@yourserver root]# chmod 755 /usr/local/bin/svgroup -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/svgroup.txt /usr/local/bin/svgroup +
cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/svgroup.txt /usr/local/bin/svgroup chmod 755 /usr/local/bin/svgroup
Prev Home Next Add PSGML commands to emacs init file (OPTIONAL) Up Install qmail (OPTIONAL)
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/install-full-text-search.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/install-full-text-search.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/install-full-text-search.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/install-full-text-search.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -1,4 +1,4 @@ -Install Full Text Search If you want full text search, and you are running PostGreSQL, install this module to support FTS. Do this step after you have installed both PostGreSQL and +
Install Full Text Search If you want full text search, and you are running PostGreSQL, install this module to support FTS. Do this step after you have installed both PostGreSQL and Aolserver. You will need the openfts tarball in /tmp.
Install Tsearch. This is a PostGreSQL module that OpenFTS requires.
[root@yourserver root]# su - postgres @@ -74,7 +74,7 @@ make su postgres make install -exitIf you are installing Full Text Search, add required packages to the new database. (In order for full text search to work, you must also install the PostGreSQL OpenFTS module and prerequisites.)
[service0@yourserver service0]$ /usr/local/pgsql/bin/psql service0 -f /usr/local/src/postgresql-7.2.4/contrib/tsearch/tsearch.sql Index: openacs-4/packages/acs-core-docs/www/install-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-overview.html,v diff -u -N -r1.15 -r1.16 --- openacs-4/packages/acs-core-docs/www/install-overview.html 28 Oct 2003 22:18:46 -0000 1.15 +++ openacs-4/packages/acs-core-docs/www/install-overview.html 31 Oct 2003 10:54:19 -0000 1.16 @@ -1,5 +1,5 @@ -Chapter�2.�Installation Overview Table of Contents
Overview Section Missing+
Chapter�2.�Installation Overview Table of Contents
by Vinod Kurup
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -($Id$)View comments on this page at openacs.org +View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/install-qmail.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-qmail.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/install-qmail.html 28 Oct 2003 22:18:46 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/install-qmail.html 31 Oct 2003 10:54:19 -0000 1.8 @@ -21,7 +21,7 @@ tcpserver: usage: tcpserver [ -1UXpPhHrRoOdDqQv ] [ -c limit ] [ -x rules.cdb ] [ -B banner ] [ -g gid ] [ -u uid ] [ -b backlog ] [ -l localname ] [ -t timeout ] host port program [root@yourserver ucspi-tcp-0.88]# -(I'm not sure if this next step is 100% necessary, but when I skip it I get problems. If you get the error 553 sorry, that domain isn't in my list of allowed rcpthosts (#5.7.1) then you need to do this.) AOLServer sends outgoing mail via the ns_sendmail command, which pipes a command to the sendmail executable. Or, in our @@ -32,10 +32,10 @@ Unless this mail is addressed to the same machine, qmail thinks that it's an attempt to relay mail, and rejects it. So these two commands set up an exception so that any mail sent from 127.0.0.1 is allowed to -send outgoing mail.
[root@yourserver ucspi-tcp-0.88]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp +send outgoing mail.[root@yourserver ucspi-tcp-0.88]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp [root@yourserver ucspi-tcp-0.88]# tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp -tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/tcp.smtp.txt /etc/tcp.smtp +tcprules /etc/tcp.smtp.cdb /etc/tcp.smtp.tmp < /etc/tcp.smtp
Download qmail, set up the standard supporting users and build the binaries:
Red Hat 9.0: Put
#include <errno.h>as the first line of @@ -74,7 +74,7 @@ useradd -g qmail -d /var/qmail qmailr useradd -g qmail -d /var/qmail qmails cd qmail-1.03 -make setup check
Replace sendmail with qmail's wrapper.
[root@yourserver qmail-1.03]# rm -f /usr/bin/sendmail /usr/sbin/sendmail +make setup checkReplace sendmail with qmail's wrapper.
[root@yourserver qmail-1.03]# rm -f /usr/bin/sendmail /usr/sbin/sendmail [root@yourserver qmail-1.03]# ln -s /var/qmail/bin/sendmail /usr/sbin/sendmail [root@yourserver qmail-1.03]#rm -f /usr/bin/sendmail /usr/sbin/sendmail @@ -96,13 +96,13 @@
cd ~alias; touch .qmail-postmaster .qmail-mailer-daemon .qmail-root chmod 644 ~alias/.qmail* /var/qmail/bin/maildirmake ~alias/Maildir/ -chown -R alias.nofiles /var/qmail/alias/Maildir
Configure qmail to use the Maildir delivery format +chown -R alias.nofiles /var/qmail/alias/Maildir
Configure qmail to use the Maildir delivery format (instead of mbox), and install a version of the qmail startup script modified to use Maildir.
[root@yourserver alias]# echo "./Maildir" > /var/qmail/bin/.qmail -[root@yourserver alias]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc +[root@yourserver alias]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc [root@yourserver alias]# chmod 755 /var/qmail/rc [root@yourserver alias]#echo "./Maildir" > /var/qmail/bin/.qmail -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail.rc.txt /var/qmail/rc chmod 755 /var/qmail/rc
Set up the skeleton directory so that new users will be configured for qmail.
[root@yourserver root]# /var/qmail/bin/maildirmake /etc/skel/Maildir @@ -114,13 +114,13 @@ [root@yourserver root]# mkdir -p /var/qmail/supervise/qmail-smtpd/log [root@yourserver root]# mkdir /var/log/qmail [root@yourserver root]# chown qmaill /var/log/qmail -[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmailctl.txt /var/qmail/bin/qmailctl +[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmailctl.txt /var/qmail/bin/qmailctl [root@yourserver root]# chmod 755 /var/qmail/bin/qmailctl [root@yourserver root]# ln -s /var/qmail/bin/qmailctl /usr/bin -[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-send-run.txt /var/qmail/supervise/qmail-send/run -[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-send-log-run.txt /var/qmail/supervise/qmail-send/log/run -[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-smtpd-run.txt /var/qmail/supervise/qmail-smtpd/run -[root@yourserver root]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-smtpd-log-run.txt /var/qmail/supervise/qmail-smtpd/log/run +[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-send-run.txt /var/qmail/supervise/qmail-send/run +[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-send-log-run.txt /var/qmail/supervise/qmail-send/log/run +[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-smtpd-run.txt /var/qmail/supervise/qmail-smtpd/run +[root@yourserver root]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-smtpd-log-run.txt /var/qmail/supervise/qmail-smtpd/log/run [root@yourserver root]# chmod 755 /var/qmail/supervise/qmail-send/run [root@yourserver root]# chmod 755 /var/qmail/supervise/qmail-send/log/run [root@yourserver root]# chmod 755 /var/qmail/supervise/qmail-smtpd/run @@ -131,13 +131,13 @@ mkdir -p /var/qmail/supervise/qmail-smtpd/log mkdir /var/log/qmail chown qmaill /var/log/qmail -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmailctl.txt /var/qmail/bin/qmailctl +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmailctl.txt /var/qmail/bin/qmailctl chmod 755 /var/qmail/bin/qmailctl ln -s /var/qmail/bin/qmailctl /usr/bin -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-send-run.txt /var/qmail/supervise/qmail-send/run -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-send-log-run.txt /var/qmail/supervise/qmail-send/log/run -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-smtpd-run.txt /var/qmail/supervise/qmail-smtpd/run -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/qmail-smtpd-log-run.txt /var/qmail/supervise/qmail-smtpd/log/run +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-send-run.txt /var/qmail/supervise/qmail-send/run +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-send-log-run.txt /var/qmail/supervise/qmail-send/log/run +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-smtpd-run.txt /var/qmail/supervise/qmail-smtpd/run +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/qmail-smtpd-log-run.txt /var/qmail/supervise/qmail-smtpd/log/run chmod 755 /var/qmail/supervise/qmail-send/run chmod 755 /var/qmail/supervise/qmail-send/log/run chmod 755 /var/qmail/supervise/qmail-smtpd/run Index: openacs-4/packages/acs-core-docs/www/install-redhat.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-redhat.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/install-redhat.html 28 Oct 2003 22:18:46 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/install-redhat.html 31 Oct 2003 10:54:19 -0000 1.9 @@ -26,7 +26,7 @@
Unplug the network cable from your computer. We don't want to connect to the network until we're sure the computer is secure. - + (Wherever you see the word secure, you should always read it as, "secure enough for our purposes, given the amount of work we're @@ -54,7 +54,7 @@ Review (and modify if needed) the partitions created and click Next
On the pop-up window asking "Are you sure you want to do this?" click Yes - IF YOU ARE WIPING YOUR HARD DRIVE.
Click Next on the boot loader screen
Click Next on the boot loader screen
Configure Networking. Again, if you know what you're doing, do this step yourself, being sure to note the firewall holes. Otherwise, follow the instructions in this step to set up a computer directly connected to the internet with a dedicated IP address.
DHCP is a system by which a computer that @@ -75,7 +75,7 @@ Mail (SMTP). In the Other ports box, enter 443, 8000, 8443. Click Next. -Port 443 is for https (http over ssl), and 8000 and 8443 are http and https access to the development server we'll be setting up.
Select any additional languages you want the +Port 443 is for https (http over ssl), and 8000 and 8443 are http and https access to the development server we'll be setting up.
Select any additional languages you want the computer to support and then click Next
Choose your time zone and click Next.
Type in a root password, twice. To @@ -96,9 +96,9 @@ risk that's still screened by the firewall, or a resource hog. Just don't install a database or web server, because that would conflict with the database and web server we'll install later. -
check�Editors�(this�installs�emacs),
+check�Editors�(this�installs�emacs),
click�Details�next�to�Text-based�Internet,�check�lynx,�and�click�OK;
-check�Authoring�and�Publishing�(this�installs�docbook),
+check�Authoring�and�Publishing�(this�installs�docbook),
uncheck�Server�Configuration�Tools,
uncheck�Web�Server,
uncheck�Windows�File�Server,
@@ -111,7 +111,7 @@ Flat View and wait. In a minute, a list of packages will appear.uncheck�apmd�(monitors�power,�not�very�useful�for�servers),�
-check�ImageMagick�(required�for�the�photo-album�packages,�
+check�ImageMagick�(required�for�the�photo-album�packages,�
uncheckisdn4k-utils�(unless�you�are�using�isdn,�this�installs�a�useless�daemon),�
check�mutt�(a�mail�program�that�reads�Maildir),
uncheck�nfs-utils�(nfs�is�a�major�security�risk),�
@@ -139,7 +139,7 @@After it finishes rebooting and shows the login prompt, log in:
yourserver login: root Password: -[root@yourserver root]#Lock down SSH
Lock down SSH
SSH is the protocol we use to connect securely to the computer (replacing telnet, which is insecure). sshd is the daemon that listens for incoming Index: openacs-4/packages/acs-core-docs/www/install-steps.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/install-steps.html,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/install-steps.html 28 Oct 2003 22:18:46 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/install-steps.html 31 Oct 2003 10:54:19 -0000 1.2 @@ -4,13 +4,13 @@ PostgreSQL).
Create a unique database and system user. Install the OpenACS tarball, start and AOLserver instance, and use the OpenACS web pages to complete installation - (Install OpenACS 5.0.0a1).
The patched version of AOLserver we use is not currently + (Install OpenACS 5.0.0a4).
The patched version of AOLserver we use is not currently available in a precompiled binary.
The packaged version of PostGreSQL in Debian and Red Hat and FreeBSD ports works fine.
Jonathan Marsden has created RPMs (at http://www.xc.org) for OpenACS 4.5 but there are not yet any for version - 5.0.0a1.
An experimental script automating OpenACS checkout + 5.0.0a4.
An experimental script automating OpenACS checkout and installation is in the openacs cvs tree at /etc/install.sh.
Index: openacs-4/packages/acs-core-docs/www/kernel-doc.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/kernel-doc.html,v diff -u -N -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/kernel-doc.html 28 Oct 2003 22:18:46 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/kernel-doc.html 31 Oct 2003 10:54:19 -0000 1.15 @@ -1 +1 @@ -
Chapter�11.�Kernel Documentation Table of Contents
- Overview
- OpenACS 4 Object Model Requirements
- OpenACS 4 Object Model Design
- OpenACS 4 Permissions Requirements
- OpenACS 4 Permissions Design
- OpenACS 4 Groups Requirements
- OpenACS 4 Groups Design
- OpenACS 4 Subsites Requirements
- OpenACS 4 Subsites Design Document
- OpenACS 5.0.0a1 Package Manager Requirements
- OpenACS 5.0.0a1 Package Manager Design
- Database Access API
- OpenACS Internationalization Requirements
- Internationalization
- OpenACS 4 Security Requirements
- OpenACS 4 Security Design
- OpenACS 4 Security Notes
- OpenACS 4 Request Processor Requirements
- OpenACS 4 Request Processor Design
- Documenting Tcl Files: Page Contracts and Libraries
- Bootstrapping OpenACS
- External Authentication Requirements
View comments on this page at openacs.org +Chapter�10.�Kernel Documentation Table of Contents
- Overview
- OpenACS 4 Object Model Requirements
- OpenACS 4 Object Model Design
- OpenACS 4 Permissions Requirements
- OpenACS 4 Permissions Design
- OpenACS 4 Groups Requirements
- OpenACS 4 Groups Design
- OpenACS 4 Subsites Requirements
- OpenACS 4 Subsites Design Document
- OpenACS 5.0.0a4 Package Manager Requirements
- OpenACS 5.0.0a4 Package Manager Design
- Database Access API
- OpenACS Internationalization Requirements
- Internationalization
- OpenACS 4 Security Requirements
- OpenACS 4 Security Design
- OpenACS 4 Security Notes
- OpenACS 4 Request Processor Requirements
- OpenACS 4 Request Processor Design
- Documenting Tcl Files: Page Contracts and Libraries
- Bootstrapping OpenACS
- External Authentication Requirements
View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/kernel-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/kernel-overview.html,v diff -u -N -r1.10 -r1.11 --- openacs-4/packages/acs-core-docs/www/kernel-overview.html 28 Oct 2003 22:07:34 -0000 1.10 +++ openacs-4/packages/acs-core-docs/www/kernel-overview.html 31 Oct 2003 10:54:19 -0000 1.11 @@ -1,4 +1,4 @@ -Overview
+
Overview
The OpenACS Kernel, which handles system-wide necessities such as metadata, security, users and groups, subsites, and package @@ -20,4 +20,4 @@
This document provides a high level overview of the kernel package. Documentation for other packages on this server -
Prev Home Next Chapter�11.�Kernel Documentation Up OpenACS 4 Object Model Requirements
docs@openacs.orgView comments on this page at openacs.org +
Prev Home Next Chapter�10.�Kernel Documentation Up OpenACS 4 Object Model Requirements
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/mac-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/mac-installation.html,v diff -u -N -r1.11 -r1.12 --- openacs-4/packages/acs-core-docs/www/mac-installation.html 28 Oct 2003 22:18:46 -0000 1.11 +++ openacs-4/packages/acs-core-docs/www/mac-installation.html 31 Oct 2003 10:54:19 -0000 1.12 @@ -1,2 +1,2 @@ -OpenACS Installation Guide for Mac OS X There are several resources for installing on OS X.
($Id$)
Prev Home Next OpenACS Installation Guide for Windows2000 Up Chapter�5.�Configuring a New Service
docs@openacs.orgView comments on this page at openacs.org +OpenACS Installation Guide for Mac OS X There are several resources for installing on OS X.
($Id$)
Prev Home Next OpenACS Installation Guide for Windows2000 Up Chapter�4.�Configuring a New Service
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/maintenance-web.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/maintenance-web.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/maintenance-web.html 28 Oct 2003 22:18:46 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/maintenance-web.html 31 Oct 2003 10:54:19 -0000 1.9 @@ -1,4 +1,4 @@ -Hosting Web Sites +
Hosting Web Sites by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -160,7 +160,7 @@ able to exploit your web server to execute a command on your server, they would not be able to gain root access.Services on different ports.�To run a different service on another port but the same - ip, simply repeat Install OpenACS 5.0.0a1 replacing + ip, simply repeat Install OpenACS 5.0.0a4 replacing service0, and change the
set httpport 8000 set httpsport 8443@@ -234,4 +234,4 @@ [root@yourserver root]# emacs /etc/cron.daily/analog
Put this into the file:
#!/bin/sh -/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/service0/etc/analog.cfg
[root@yourserver root]# chmod 755 /etc/cron.daily/analogTest it by running the script.
[root@yourserver root]# sh /etc/cron.daily/analogBrowse to http://yourserver.test/log/traffic.html
($Id$)View comments on this page at openacs.org +/usr/share/analog-5.31/analog -G -g/var/lib/aolserver/service0/etc/analog.cfg[root@yourserver root]# chmod 755 /etc/cron.daily/analogTest it by running the script.
[root@yourserver root]# sh /etc/cron.daily/analogBrowse to http://yourserver.test/log/traffic.html
($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/maintenance.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/maintenance.html,v diff -u -N -r1.6 -r1.7 --- openacs-4/packages/acs-core-docs/www/maintenance.html 28 Oct 2003 22:07:35 -0000 1.6 +++ openacs-4/packages/acs-core-docs/www/maintenance.html 31 Oct 2003 10:54:19 -0000 1.7 @@ -1 +1 @@ -Chapter�7.�Maintenance Table of Contents
View comments on this page at openacs.org +Chapter�6.�Maintenance Table of Contents
View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/object-identity.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-identity.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/object-identity.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/object-identity.html 31 Oct 2003 10:54:19 -0000 1.17 @@ -1,19 +1,19 @@ -Object Identity +
Object Identity by Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -One of the major design features of OpenACS 5.0.0a1 is the explicit representation +
One of the major design features of OpenACS 5.0.0a4 is the explicit representation of object identity. The reason I say "explicit representation" is because the concept of object identity has been around forever. It is inherent to our problem domain. Consider the example of 3.x style scoping. The 3.x data models use the triple (user_id, group_id, -scope) to identify an object. In the 5.0.0a1 data model this +scope) to identify an object. In the 5.0.0a4 data model this object is explicitly represented by a single party_id.
Another good example of this is can be found in the user groups data model. The 3.x user groups data model contains another example of an implied identity. Every mapping between a user and a group could have an arbitrary number of attached values (user_group_member_fields, etc.). In this case it is the pair (group_id, user_id) that implicitly refers to an -object (the person's membership in a group). In the 5.0.0a1 data model this +object (the person's membership in a group). In the 5.0.0a4 data model this object identity is made explicit by adding an integer primary key to the table that maps users to groups.
Coming from a purely relational world, this might seem slightly weird at first. The pair (group_id, user_id) is sufficient to uniquely identify the Index: openacs-4/packages/acs-core-docs/www/object-system-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-system-design.html,v diff -u -N -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/object-system-design.html 28 Oct 2003 22:07:35 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/object-system-design.html 31 Oct 2003 10:54:19 -0000 1.15 @@ -1,4 +1,4 @@ -
OpenACS 4 Object Model Design +
OpenACS 4 Object Model Design by Pete Su, Michael Yoon, Richard Li Index: openacs-4/packages/acs-core-docs/www/object-system-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/object-system-requirements.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/object-system-requirements.html 28 Oct 2003 22:07:35 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/object-system-requirements.html 31 Oct 2003 10:54:19 -0000 1.14 @@ -1,4 +1,4 @@ -
OpenACS 4 Object Model Requirements +
OpenACS 4 Object Model Requirements By Pete Su
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/objects.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/objects.html,v diff -u -N -r1.17 -r1.18 --- openacs-4/packages/acs-core-docs/www/objects.html 28 Oct 2003 22:18:46 -0000 1.17 +++ openacs-4/packages/acs-core-docs/www/objects.html 31 Oct 2003 10:54:19 -0000 1.18 @@ -1,10 +1,10 @@ -OpenACS Data Models and the Object System +
OpenACS Data Models and the Object System By Pete Su
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.-Developing data models in OpenACS 5.0.0a1 is much like developing data models +Developing data models in OpenACS 5.0.0a4 is much like developing data models for OpenACS 3, save for the implementation. As usual, you need to examine how to model the information that the application must store and manipulate, and define a suitable set of SQL tables. In our Notes @@ -79,8 +79,8 @@
Fire up your text editor and open the ROOT/packages/notes/sql/oracle/notes-create.sql (ROOT/packages/notes/sql/postgresql/notes-create.sql for the PG version) file created -when we created the package. Then, do the following: -
+when we created the package. Then, do the following: +
First, add an entry to the acs_object_types table with the following PL/SQL call:
begin @@ -140,7 +140,7 @@ because the new type note is a subtype of acs_object, it will inherit these attributes, so there is no need for us to define them. -The next thing we do is make a small modification to the data model to reflect the fact that each row in the notes table represents something that is not only an object of type @@ -165,7 +165,7 @@ use the acs_objects table to find objects will transparently find any objects that are instances of any subtype of acs_objects. -
The next step is to define a PL/SQL package for your new type, and write some basic procedures to create and delete objects. Here is a package definition for our new type: @@ -213,7 +213,7 @@ object OBJ was "read only", then any other object that used OBJ as its context would also be "read only" by default. We'll talk about this more later. -
The PL/SQL package body contains the implementations of the procedures defined above. The only subtle thing going on here is that we must use acs_object.new to insert a row into @@ -316,7 +316,7 @@ models that are meant to be integrated with the OpenACS object system.
-There are two basic rules you should follow when designing OpenACS 5.0.0a1 data +There are two basic rules you should follow when designing OpenACS 5.0.0a4 data models: @@ -371,7 +371,7 @@ requires a good amount of thought at design time even for simple applications.
-Hooking into the OpenACS 5.0.0a1 object system brings the application developer +Hooking into the OpenACS 5.0.0a4 object system brings the application developer numerous benefits, and doing it involves only four easy steps: @@ -395,4 +395,4 @@ especially true for the context_id field.
-
($Id$)View comments on this page at openacs.org +($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/openacs-overview.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs-overview.html,v diff -u -N -r1.10 -r1.11 --- openacs-4/packages/acs-core-docs/www/openacs-overview.html 28 Oct 2003 22:07:35 -0000 1.10 +++ openacs-4/packages/acs-core-docs/www/openacs-overview.html 31 Oct 2003 10:54:19 -0000 1.11 @@ -39,10 +39,10 @@ to port ACS from Oracle to PostgreSQL, thus making it a fully open-source solution.- OpenACS 5.0.0a1 is the next generation of the web toolkit. It's based on + OpenACS 5.0.0a4 is the next generation of the web toolkit. It's based on ACS 4, but no longer follows ArsDigita development. Unlike ACS (which required Oracle) and OpenACS 3.x (which required PostgreSQL), - OpenACS 5.0.0a1 allows you to use either database. It's also built in such + OpenACS 5.0.0a4 allows you to use either database. It's also built in such a way to allow enterprising hackers (in the good sense of the word) to extend it to other databases. Don Baccus leads the development and numerous developers and non-developers Index: openacs-4/packages/acs-core-docs/www/openacs-unpack.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs-unpack.html,v diff -u -N -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/openacs-unpack.html 28 Oct 2003 22:07:35 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/openacs-unpack.html 31 Oct 2003 10:54:20 -0000 1.6 @@ -1,6 +1,6 @@
Unpack the OpenACS tarball The OpenACS tarball contains sample configuration files for some of the packages listed below. In order to access those files, unpack the tarball now.
[root@yourserver root]# cd /tmp -[root@yourserver tmp]# tar xzf openacs-5.0.0a1.tgz +[root@yourserver tmp]# tar xzf openacs-5.0.0a4.tgzcd /tmp -tar xzf openacs-5.0.0a1.tgz
Prev Home Next Appendix�B.�Install additional supporting software Up Initialize CVS (OPTIONAL)
docs@openacs.orgView comments on this page at openacs.org +tar xzf openacs-5.0.0a4.tgz
Prev Home Next Appendix�B.�Install additional supporting software Up Initialize CVS (OPTIONAL)
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/openacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/openacs.html,v diff -u -N -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/openacs.html 28 Oct 2003 22:18:46 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/openacs.html 31 Oct 2003 10:54:20 -0000 1.15 @@ -1,4 +1,4 @@ -Install OpenACS 5.0.0a1 +
Install OpenACS 5.0.0a4 by Vinod Kurup
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -29,7 +29,7 @@ of your site is one word, that would be a good choice. For example "service0" might be the service name for the service0.net - community.For the 5.0.0a1-P and 5.0.0a1-O Reference Platform, + community.
For the 5.0.0a4-P and 5.0.0a4-O Reference Platform, we'll use a server named service0 and a user named service0. We'll leave the password blank for increased security. The only way to log in will be @@ -70,8 +70,8 @@ [root@yourserver root]#
Unpack the OpenACS tarball and rename it to service0. Secure the directory so that only the owner can access it. Check the permissions by listing the directory.
[root@yourserver root]# su - service0 [service0@yourserver service0]$ cd /var/lib/aolserver -[service0@yourserver aolserver]$ tar xzf /tmp/openacs-5.0.0a1.tgz -[service0@yourserver aolserver]$ mv openacs-5.0.0a1 service0 +[service0@yourserver aolserver]$ tar xzf /tmp/openacs-5.0.0a4.tgz +[service0@yourserver aolserver]$ mv openacs-5.0.0a4 service0 [service0@yourserver aolserver]$ chmod -R 700 service0 [service0@yourserver aolserver]$ ls -al total 3 @@ -84,8 +84,8 @@ [root@yourserver root]#su - service0 cd /var/lib/aolserver -tar xzf /tmp/openacs-5.0.0a1.tgz -mv openacs-5.0.0a1 service0 +tar xzf /tmp/openacs-5.0.0a4.tgz +mv openacs-5.0.0a4 service0 chmod -R 700 service0/ exit
Add the Service to CVS (OPTIONAL)
(This step should be obsoleted by the 5.0.0 tarball, as these directories will be included in the tarball)Set up several additional directories in the service root: @@ -244,7 +244,7 @@ CREATE DATABASE [service0@yourserver service0]$
su - service0 -createdb -E UNICODE service0
Automate daily database Vacuuming. This is a process which cleans out discarded data from the database. A quick way to automate vacuuming is to edit the cron file for the database user.
[service0@yourserver service0]$ export EDITOR=emacs;crontab -eAdd this line to the file. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day.
0 1 * * * /usr/local/pgsql/bin/vacuumdb --analyze service0
Add Full Text Search Support (OPTIONAL)
[service0@yourserver service0]$ exit +createdb -E UNICODE service0
Automate daily database Vacuuming. This is a process which cleans out discarded data from the database. A quick way to automate vacuuming is to edit the cron file for the database user.
[service0@yourserver service0]$ export EDITOR=emacs;crontab -eAdd this line to the file. The numbers and stars at the beginning are cron columns that specify when the program should be run - in this case, whenever the minute is 0 and the hour is 1, i.e., 1:00 am every day.
0 1 * * * /usr/local/pgsql/bin/vacuumdb --analyze service0
Add Full Text Search Support (OPTIONAL)
[service0@yourserver service0]$ exit logout [root@yourserver root]#
@@ -254,7 +254,7 @@ need to configure a virtual server. The Reference Platform uses a configuration file included in the OpenACS tarball, /var/lib/aolserver/service0/etc/config.tcl. - Open it in an editor to adjust the parameters.
[root@yourserver root]# su - service0 + Open it in an editor to adjust the parameters.[root@yourserver root]# su - service0 [service0@yourserver service0]$ cd /var/lib/aolserver/service0/etc [service0@yourserver etc]# emacs config.tcl@@ -319,7 +319,7 @@
Automate AOLserver keepalive (OPTIONAL)
Now that you've got AOLserver up and running, let's install OpenACS - 5.0.0a1. + 5.0.0a4.
You should see a page from the webserver titled OpenACS Installation: @@ -375,11 +375,11 @@ Give the server a few minutes to start up. Then reload the final page above. You should see the front page, with an area to login near the upper right. Congratulations, OpenACS - 5.0.0a1 is now up and running! + 5.0.0a4 is now up and running!
Install Full Text Search (OPTIONAL). If you have installed OpenFTS and enabled OpenFTS, you can now install the OpenFTS Driver package and - Full Text Search Engine package in the OpenACS service.
This is a good time to make a backup of your service. If this is a + Full Text Search Engine package in the OpenACS service.
This is a good time to make a backup of your service. If this is a production site, you should set up automatic nightly backups.
If you want traffic reports, set up analog or another log processing program.
Follow the instruction on the home page to change the appearance of your service or add more - packages. (more information)
Proceed to the tutorial to learn how to develop your own packages.
Test your backup and recovery procedure.
($Id$)
Prev Home Next Install AOLserver 3.3oacs1 Up OpenACS Installation Guide for Windows2000
docs@openacs.orgView comments on this page at openacs.org + packages. (more information)Proceed to the tutorial to learn how to develop your own packages.
Test your backup and recovery procedure.
($Id$)
Prev Home Next Install AOLserver 3.3oacs1 Up OpenACS Installation Guide for Windows2000
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/oracle.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/oracle.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/oracle.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/oracle.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -Install Oracle 8.1.7 +
Install Oracle 8.1.7 by Vinod Kurup
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -8,7 +8,7 @@Note
- OpenACS 5.0.0a1 does not yet work with Oracle 9i + OpenACS 5.0.0a4 does not yet work with Oracle 9i
Index: openacs-4/packages/acs-core-docs/www/packages.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/packages.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/packages.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/packages.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -
OpenACS 5.0.0a1 Packages +
OpenACS 5.0.0a4 Packages By Pete Su and Bryan Quinn
OpenACS docs are written by the named authors, and may be edited @@ -60,7 +60,7 @@ the pieces of each module are strewn all over the tree in at least 3 or 4 different areas.- Here is how an OpenACS 5.0.0a1 server is laid out: + Here is how an OpenACS 5.0.0a4 server is laid out:
ROOT/ @@ -124,7 +124,7 @@ sends to our server to the right page in the appropriate package. While we're at it, this tool should also automate package installation, dependency checking, upgrades, and package - removal. In OpenACS 5.0.0a1, this tool is called the APM. + removal. In OpenACS 5.0.0a4, this tool is called the APM.The APM is used to create, maintain, and install packages. It takes care of copying all of the files and registering the package in the @@ -146,7 +146,7 @@
The following sections will show you how to make a package for the Notes application. In addition, they will discuss some new site - management features in OpenACS 5.0.0a1 that take advantage of the APM's package + management features in OpenACS 5.0.0a4 that take advantage of the APM's package instance model. The two most important of these are subsites, and the site map tool, which can be used to map applications to one or more arbitrary URLs in a running site. @@ -434,7 +434,7 @@ map content that lived outside the page root into the site, and it was also hard to map mulitiple URLs to the same place in the file system.
- In OpenACS 5.0.0a1, administrators can define an arbitrary mapping between the + In OpenACS 5.0.0a4, administrators can define an arbitrary mapping between the URLs the user types and the actual file in the file system that is served. This mapping is called the site map and entries in the site map are called site nodes. Each site node maps a URL to an @@ -449,7 +449,7 @@ of many indedendent applications that actually run on a single shared code base. The request-processor document shows you how OpenACS figures out which instance of your application was - requested by the user at any given time. The page development tutorial shows you how to use this + requested by the user at any given time. The page development tutorial shows you how to use this information in your user interface.
In order to make the new notes application visible to @@ -476,7 +476,7 @@ yet written Notes application at various places in the site. In a later document, we'll see how to write your application so that the code can detect from what URL it was invoked. This is the key - to supporting subsites. + to supporting subsites.
The APM performs the following tasks in an OpenACS site:
@@ -492,4 +492,4 @@
Writes out package distribution files for other people to download and install. We'll cover this later. -
Prev Home Next Chapter�9.�Development Reference Up OpenACS Data Models and the Object System
docs@openacs.orgView comments on this page at openacs.org +
Prev Home Next Chapter�8.�Development Reference Up OpenACS Data Models and the Object System
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/parties.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/parties.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/parties.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/parties.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -Parties in OpenACS 5.0.0a1 +
Parties in OpenACS 5.0.0a4 by Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -66,7 +66,7 @@ users) is that it is now possible to "nuke" a user from a live system by removing his entry from the users table, but leaving the rest of his information present (i.e. turning him from a user into a person). This is -because wherever possible the OpenACS 5.0.0a1 data model references the persons or +because wherever possible the OpenACS 5.0.0a4 data model references the persons or parties table, not the users table. If this feature is desired when extending the system, then the developers should be careful to only references the users table in situations where it is clear that the @@ -298,7 +298,7 @@ have a primary key that references the users table, thereby guaranteeing that each row in the mensa_users table has a corresponding row in each of the users, persons, parties, and acs_objects tables. This child table could then -store any extra information relevant to the MENSA community.Specializing Groups
If one were to build an intranet application on top of the 5.0.0a1 party +store any extra information relevant to the MENSA community.
Specializing Groups
If one were to build an intranet application on top of the 5.0.0a4 party system, it is likely that one would want to take advantage of the systems efficient representation of sophisticated organizational structures, but there would be much more specialized information associated with each group. @@ -312,4 +312,4 @@ single integer primary key in what could be thought of as a pure relation. Because a membership relation is an ordinary acs object with object identity, it is as easy to extend the membership relation to store extra information as it is to extend the users -table or the groups table.
($Id$)
Prev Home Next Writing OpenACS 5.0.0a1 Application Pages Up OpenACS 4.x Permissions Tediously Explained
docs@openacs.orgView comments on this page at openacs.org +table or the groups table.($Id$)
Prev Home Next Writing OpenACS 5.0.0a4 Application Pages Up OpenACS 4.x Permissions Tediously Explained
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/permissions-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-design.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/permissions-design.html 28 Oct 2003 22:07:35 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/permissions-design.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Permissions Design +
OpenACS 4 Permissions Design by John Prevost and Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/permissions-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-requirements.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/permissions-requirements.html 28 Oct 2003 22:07:36 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/permissions-requirements.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Permissions Requirements +
OpenACS 4 Permissions Requirements by John McClary Prevost
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html,v diff -u -N -r1.10 -r1.11 --- openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html 28 Oct 2003 22:18:46 -0000 1.10 +++ openacs-4/packages/acs-core-docs/www/permissions-tediously-explained.html 31 Oct 2003 10:54:20 -0000 1.11 @@ -1,4 +1,4 @@ -OpenACS 4.x Permissions Tediously Explained +
OpenACS 4.x Permissions Tediously Explained by Vadim Nasardinov. Modified and converted to Docbook XML by Roberto Mello
The general permissions system has a relatively complex data model in OpenACS 4.x. @@ -85,7 +85,7 @@ to store permission information explicitly about every object, i.e. if the system has 100,000 and 1,000 users who have the read privilege on all objects, then we would need to store 100,000,000 entries of the form: -
Table�9.1.�
object_id grantee_id privilege object_id_1 user_id_1 'read' object_id_1 user_id_2 'read' ... object_id_1 user_id_n 'read' object_id_2 user_id_1 'read' object_id_2 user_id_2 'read' ... object_id_2 user_id_n 'read' ... ... object_id_m user_id_1 'read' object_id_m user_id_2 'read' ... object_id_m user_id_n 'read' +
Table�8.1.�
object_id grantee_id privilege object_id_1 user_id_1 'read' object_id_1 user_id_2 'read' ... object_id_1 user_id_n 'read' object_id_2 user_id_1 'read' object_id_2 user_id_2 'read' ... object_id_2 user_id_n 'read' ... ... object_id_m user_id_1 'read' object_id_m user_id_2 'read' ... object_id_m user_id_n 'read' Although quite feasible, this approach fails to take advantage of the fact that objects in the system are commonly organized hierarchally, and permissions usually follow the hierarchical structure, so that if user @@ -100,7 +100,7 @@
Suppose objects A, B, ..., and F form the following hierarchy. -
Table�9.2.�
A +
Table�8.2.�
A object_id=10
B object_id=20 @@ -116,23 +116,23 @@ This can be represented in the acs_objects table by the following entries: -
+
The first entry tells us that object 20 is the descendant of object 10, and the third entry shows that object 40 is the descendant of object 20. By running a CONNECT BY query, we can compute that object 40 is the second-generation descendant of object 10. With this in mind, if we want to record the fact that user Joe has the read privilege on objects A, ..., F, we only need to record one entry in the acs_permissions table. -
+
The fact that Joe can also read B, C, ..., and F can be derived by ascertaining that these objects are children of A by traversing the context hierarchy. As it turns out, hierarchical queries are expensive. As Rafael Schloming put it so aptly, Oracle can't deal with hierarchies for shit.
One way to solve this problem is to cache a flattened view of the context tree like so: -
+
Note that the number of entries in the flattened view grows exponentially with respect to the depth of the context tree. For instance, if you have a fully populated binary tree with a depth of n, then the number of entries @@ -203,7 +203,7 @@ an object's security_inherit_p column to 'f', you can stop permissions from cascading down the context tree. In the following example, Joe does not have the read permissions on C and F. -
Table�9.6.�
+Table�8.6.�
A
object_id=10
readable�by�Joe
@@ -231,7 +231,7 @@ Privileges are also organized hierarchically. In addition to the five main system privileges defined in the ACS Kernel data model, application developers may define their own. For instance, the Bboard package defines the following privileges: -Table�9.7.�
privilege create_category create_forum create_message delete_category delete_forum delete_message moderate_forum read_category read_forum read_message write_category write_forum write_message +
Table�8.7.�
privilege create_category create_forum create_message delete_category delete_forum delete_message moderate_forum read_category read_forum read_message write_category write_forum write_message By defining parent-child relationship between privileges, the OpenACS data model makes it easier for developers to manage permissions. Instead of granting a user explicit read, write, delete, @@ -240,7 +240,7 @@ privilege to which the first four privileges are tied. To give a more detailed example, the Bboard privileges are structured as follows. -
Table�9.8.�
admin create delete read write moderate forum create category create forum create message delete category delete forum delete message read category read forum read message write category write forum write message +
Table�8.8.�
admin create delete read write moderate forum create category create forum create message delete category delete forum delete message read category read forum read message write category write forum write message The parent-child relationship between privileges is represented in the acs_privilege_hierarchy table:
@@ -286,7 +286,7 @@Now for the third hierarchy playing a promiment role in the permission system. The party data model is set up as follows. -
+create table parties ( party_id not null @@ -370,7 +370,7 @@
The acs_rels table entries would look like so: -
Table�9.10.�
rel_type object_one object_two + Table�8.10.�
rel_type object_one object_two membership_rel Pranksters @@ -405,7 +405,7 @@ The relevant entries in the acs_rels look like so. -
Table�9.11.�
rel_type object_one object_two + Table�8.11.�
rel_type object_one object_two composition_rel Pranksters @@ -616,7 +616,7 @@ Note that in the above example, acs_permissions had only one entry that needed to be deleted: -
Table�9.12.�
object_id grantee_id privilege + Table�8.12.�
object_id grantee_id privilege default_context registered_users @@ -689,4 +689,4 @@ container_id from group_member_index; - View comments on this page at openacs.org +View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/permissions.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/permissions.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/permissions.html 28 Oct 2003 22:18:46 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/permissions.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,8 +1,8 @@ -Groups, Context, Permissions By Pete Su
+Groups, Context, Permissions By Pete Su
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.-The OpenACS 5.0.0a1 Permissions system allows developers and administrators to +The OpenACS 5.0.0a4 Permissions system allows developers and administrators to set access control policies at the object level, that is, any application or system object represented by a row in the acs_objects table can be access-controlled via a simple @@ -13,7 +13,7 @@ Although this may all sound easy and wonderful, no developer or administrator would want to explicitly set access control rights for every user and every object on a -site. Therefore, OpenACS 5.0.0a1 has two auxiliary mechanisms for making this +site. Therefore, OpenACS 5.0.0a4 has two auxiliary mechanisms for making this easier: First, the Groups system allows users to be grouped together in flexible ways. Second, the object model defines a notion of object context, which allows applications to group objects @@ -25,7 +25,7 @@ define simple groupings of users. Each group had a human readable name and unique ID, and there was a single mapping table that mapped users to groups. (The actual data model was more complicated because it -contained a meta-data system much like the OpenACS 5.0.0a1 object type system, +contained a meta-data system much like the OpenACS 5.0.0a4 object type system, but that's not relevant right now.)
The 3.x groups system, while very useful, was limited in few ways. The @@ -47,7 +47,7 @@ member of Greenpeace, its members are not necessarily members of Greenpeace.
-OpenACS 5.0.0a1 solves both of these modeling problems by introducing a new +OpenACS 5.0.0a4 solves both of these modeling problems by introducing a new abstraction called a party. Parties have a recursive definition, and we can illustrate how it works with the following simplified data model. First, we define the parties @@ -113,18 +113,18 @@ already know what parties and objects are, but we don't know what privileges are.
-In OpenACS 5.0.0a1, a privilege models the right to perform some operation on +In OpenACS 5.0.0a4, a privilege models the right to perform some operation on some object. They are the basic units out of which we build access control policies. For example, in the Unix filesystem we typically implement access control by granting users some combination of -read. write or execute privileges on files and directories. In OpenACS 5.0.0a1, +read. write or execute privileges on files and directories. In OpenACS 5.0.0a4, the table of privileges is organized hierarchically so that developers can define privileges that aggregate some set of privileges together. For example, if we have read, write, create and delete privileges, it might be convenient to combine them into a new privilege called "admin". Then if we grant a user this privilege she is automatically granted all the child privileges that the privilege -contains. The OpenACS 5.0.0a1 kernel data model actually defines these +contains. The OpenACS 5.0.0a4 kernel data model actually defines these privileges as follows:
@@ -164,7 +164,7 @@ permissions to large groups of objects in the site, all at once. We use contexts to achieve this goal.-In OpenACS 5.0.0a1, an object context is a generalization of the scoping +In OpenACS 5.0.0a4, an object context is a generalization of the scoping mechanism introduced in OpenACS 3.x. "Scoping" and "scope" are terms best explained by example: consider some hypothetical rows in the address_book table: @@ -179,7 +179,7 @@ person or a group of people or the general public (itself a group of people).
-In OpenACS 5.0.0a1, rather than breaking the world into a limited set of scopes, +In OpenACS 5.0.0a4, rather than breaking the world into a limited set of scopes, every object lives in a single context. A context is just an another object that represents the security domain to which the object belongs. By convention, if an object A doesn't have any permissions @@ -196,7 +196,7 @@ application. With only row-level permissions it is not obvious how to reasonably initialize the access control list when creating a message. At best, we have to explicitly grant various read and write -privileges whenever we create a message, which is tedious. In OpenACS 5.0.0a1, +privileges whenever we create a message, which is tedious. In OpenACS 5.0.0a4, a reasonable thing to do is to create an object representing a forum, and point the context_id field of a new message at the forum. Then, suppose we grant every user in the system read-access to @@ -330,7 +330,7 @@
This displays the title of the note as either a link or plain text depending on whether or not we have write privileges on the object. -The if tag is something that the OpenACS 5.0.0a1 template system +The if tag is something that the OpenACS 5.0.0a4 template system defines for you to support conditional presentation. The templates developer guide provides more information about this.
If you study the rest of the system, you will also notice that the @@ -344,7 +344,7 @@ permissions to notes that she wanted to make public or whatever. But that's beyond the scope of this example.
-OpenACS 5.0.0a1 defines three separate mechanisms for specifying access control +OpenACS 5.0.0a4 defines three separate mechanisms for specifying access control in applications. The Groups data model allows you to define hierarchical organizations of users and groups of users. The Permissions data model allows you to define a hierarchy of user rights. Finally, @@ -354,4 +354,4 @@
In the next section, we'll look at a more complex page for adding and editing notes, and discuss these issues further. -
($Id$)
Prev Home Next Using Templates in OpenACS 5.0.0a1 Up Writing OpenACS 5.0.0a1 Application Pages
docs@openacs.orgView comments on this page at openacs.org +($Id$)
Prev Home Next Using Templates in OpenACS 5.0.0a4 Up Writing OpenACS 5.0.0a4 Application Pages
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/platform-dev.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/platform-dev.html,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/platform-dev.html 28 Oct 2003 22:18:47 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/platform-dev.html 31 Oct 2003 10:54:20 -0000 1.2 @@ -1,3 +1,3 @@ -Platform Development Information about the internal workings of OpenACS, useful +
Platform Development Information about the internal workings of OpenACS, useful both for modifying the core functionality and for developing new - packages.
Prev Home Next Part�IV.�For OpenACS Platform Developers Up Chapter�11.�Kernel Documentation
docs@openacs.orgView comments on this page at openacs.org + packages.
Prev Home Next Part�IV.�For OpenACS Platform Developers Up Chapter�10.�Kernel Documentation
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/postgres.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/postgres.html,v diff -u -N -r1.15 -r1.16 --- openacs-4/packages/acs-core-docs/www/postgres.html 29 Oct 2003 09:01:10 -0000 1.15 +++ openacs-4/packages/acs-core-docs/www/postgres.html 31 Oct 2003 10:54:20 -0000 1.16 @@ -1,8 +1,8 @@ -Install PostGreSQL +
Install PostGreSQL by Vinod Kurup
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -Skip this section if you will run only Oracle.
OpenACS 5.0.0a1 will run with PostGreSQL 7.2.x, 7.3.2, +
Skip this section if you will run only Oracle.
OpenACS 5.0.0a4 will run with PostGreSQL 7.2.x, 7.3.2, 7.3.3, and 7.3.4. 7.3.4 is the recommended version of PostgreSQL.
Using the Red Hat RPM.�Red Hat users: If you install PostGreSQL 7.3.4 from the Red Hat 9 RPM, you can skip a few steps. These shell commands add a link so that the data directory appears to be in the same place as in a source @@ -62,7 +62,7 @@ Change to the postgres user and run ./configure to set the compilation options automatically. This is the point at which you can configure PostgreSQL in various ways. For example, if you want to enable - Unicode support, add the flags --enable-locale and --enable-multibyte. If you want to see what the other possibilities are, run ./configure --help. + Unicode support, add the flags --enable-locale and --enable-multibyte. If you want to see what the other possibilities are, run ./configure --help.
[root@yourserver src]# su - postgres [postgres@yourserver pgsql]$ cd /usr/local/src/postgresql-7.3.4 [postgres@yourserver postgresql-7.3.4]$ ./configure @@ -159,11 +159,11 @@ state. Red Hat and Debian and SuSE each work a little differently.
Red Hat RPM:
The init script is already installed; just turn it on for the appropriate run levels.
[root@yourserver root]# chkconfig --level 345 postgresql on -[root@yourserver root]#Red Hat from source:
[root@yourserver src]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql +[root@yourserver root]#Red Hat from source:
[root@yourserver src]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql [root@yourserver src]# chown root.root /etc/rc.d/init.d/postgresql [root@yourserver src]# chmod 755 /etc/rc.d/init.d/postgresql [root@yourserver src]# -cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql +
cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql chown root.root /etc/rc.d/init.d/postgresql chmod 755 /etc/rc.d/init.d/postgresql
Test the script.
[root@yourserver root]# service postgresql stop Stopping PostgreSQL: ok @@ -182,11 +182,11 @@chkconfig --add postgresql chkconfig --level 345 postgresql on chkconfig --list postgresql -service postgresql start
Debian:
root:~# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql +service postgresql startDebian:
root:~# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql root:~# chown root.root /etc/init.d/postgresql root:~# chmod 755 /etc/init.d/postgresql root:~#-cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql +cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/postgresql.txt /etc/init.d/postgresql chown root.root /etc/init.d/postgresql chmod 755 /etc/init.d/postgresql
Test the script
root:~# /etc/init.d/postgresql stop Stopping PostgreSQL: ok @@ -214,7 +214,7 @@ rc.d/ part in each of the following commands. -root:~# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/postgresql.txt /etc/rc.d/init.d/postgresql +root:~# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/postgresql.txt /etc/rc.d/init.d/postgresql root:~# chown root.root /etc/rc.d/init.d/postgresql root:~# chmod 755 /etc/rc.d/init.d/postgresqlIndex: openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/programming-with-aolserver.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -
Programming with AOLserver +
Programming with AOLserver by Michael Yoon, Jon Salz and Lars Pind.
OpenACS docs are written by the named authors, and may be edited @@ -41,7 +41,7 @@ which runs frequently, don't use the -thread switch.View comments on this page at openacs.org +($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html 28 Oct 2003 22:18:47 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/psgml-for-emacs.html 31 Oct 2003 10:54:20 -0000 1.8 @@ -1,8 +1,8 @@ -Add PSGML commands to emacs init file (OPTIONAL) Add PSGML commands to emacs init file (OPTIONAL) If you plan to write or edit any documentation with emacs, install a customized emacs configuration file with DocBook commands in the skeleton directory, so it will be used for all new users. The file also fixes the backspace -> help mis-mapping that often occurs in - terminals.
[root@yourserver tmp]# cp /tmp/openacs-5.0.0a1/packages/acs-core-docs/www/files/emacs.txt /etc/skel/.emacs + terminals.[root@yourserver tmp]# cp /tmp/openacs-5.0.0a4/packages/acs-core-docs/www/files/emacs.txt /etc/skel/.emacs cp: overwrite `/etc/skel/.emacs'? y [root@yourserver tmp]#View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/psgml-mode.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/psgml-mode.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/psgml-mode.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/psgml-mode.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -Using PSGML mode in Emacs +
Using PSGML mode in Emacs By David Lutterkort
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/release-notes.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/release-notes.html,v diff -u -N -r1.19 -r1.20 --- openacs-4/packages/acs-core-docs/www/release-notes.html 28 Oct 2003 22:18:47 -0000 1.19 +++ openacs-4/packages/acs-core-docs/www/release-notes.html 31 Oct 2003 10:54:20 -0000 1.20 @@ -11,7 +11,7 @@You may want to begin by reading our installation documentation for Section�, “a Unix-like system”. Note that the Windows documentation is - not current for OpenACS 5.0.0a1, but an alternative is to use John + not current for OpenACS 5.0.0a4, but an alternative is to use John Sequeira's Oasis VM project.
@@ -83,4 +83,4 @@ Who's online feature.
Spell checking. -
($Id$)View comments on this page at openacs.org +($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/releasing-openacs.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/releasing-openacs.html,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/releasing-openacs.html 28 Oct 2003 22:07:36 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/releasing-openacs.html 31 Oct 2003 10:54:20 -0000 1.3 @@ -1,45 +1,50 @@ -Appendix�E.�How to package and release OpenACS
Check out the cvs tree. The files must be checked out +
Appendix�E.�How to package and release OpenACS
Check out the cvs tree. The files must be checked out through a cvs account with write access. In this example, the cvs user on openacs.org is implied from the ssh login information previously set up. It could be overridden via foobar@openacs.org.
cd /tmp -cvs -d :ext:@openacs.org:/cvsroot checkout openacs-4 +cvs -d :pserver:anonymous@openacs.org:/cvsroot checkout openacs-4
Repeat with the dotlrn cvs tree.
cd /tmp mkdir dotlrn-packages cd dotlrn-packages -cvs -d :ext:@dotlrn@openacs.org:/dotlrn-cvsroot checkout dotlrn-all +cvs -d :pserver:anonymous@dotlrn@openacs.org:/dotlrn-cvsroot checkout dotlrn-all
Tag the tree.
cd /tmp/openacs-4 -cvs tag openacs-5-0-0a1 +cvs tag openacs-5-0-0a1
Tag dotLRN. Since the dotLRN packages aren't all in one module, we iterate through all of the modules. Log in first (cvs login) so that you don't have to log in for each module.
cd /tmp/dotlrn-package -cvs tag dotlrn-2-0-0a1 +for dir in $(ls); do cd $dir; cvs tag dotlrn-2-0-0a3; cd ..; done
Make the tarball
openacs-core.�
Go to a new working space and export the tagged files.
mkdir /tmp/tarball cd /tmp/tarball -cvs export -r openacs-5-0-0a1 -d openacs acs-core +cvs -d :pserver:anonymous@openacs.org:/cvsroot export -r openacs-5-0-0a1 -d openacs acs-core
Generate the tarball
cd /tmp/tarball rm -rf /tmp/tarball/openacs/CVS -tar cz -f openacs-5.0.0a1.tar.gz openacs -
dotlrn.�
Go to a new working space and export the tagged files.
+tar cz -f openacs-5.0.0a1.tar.gz openacs +
dotlrn.�
Go to a new working space and export the tagged + files. (was getting errors here trying to use -d, so + gave up and just moved things from openacs-4 to + openacs at the end)
mkdir /tmp/dotlrn-tarball cd /tmp/dotlrn-tarball -cvs export -d :pserver:anonymous@openacs.org:/cvsroot \ - -r openacs-5-0-0a1 -d openacs acs-core -cd packages -cvs export -d :pserver:anonymous@openacs.org:/cvsroot \ - -r openacs-5-0-0a1 -d openacs dotlrn-prereq -cvs export -d :pserver:anonymous@dotlrn.openacs.org:/dotlrn-cvsroot \ - -r dotlrn-2.0.0a1 dotlrn-core +cvs -d :pserver:anonymous@openacs.org:/cvsroot export \ + -r openacs-5-0-0a1 acs-core +cd /tmp/dotlrn-tarball/openacs-4/packages +cvs -d :pserver:anonymous@openacs.org:/cvsroot export \ + -r openacs-5-0-0a1 dotlrn-prereq +cvs -d :pserver:anonymous@dotlrn.openacs.org:/dotlrn-cvsroot export \ + -r dotlrn-2-0-0a1 dotlrn-core +cd /tmp/dotlrn-tarball +mv openacs-4 openacs
Copy the dotlrn install.xml file, which controls which packages are installed on setup, to the root location:
-cp /tmp/dotlrn-tarball/openacs/packages/dotlrn/install.xml /tmp/dotlrn-tarball/openacs +cp /tmp/dotlrn-tarball/openacs-4/packages/dotlrn/install.xml /tmp/dotlrn-tarball/openacs
Generate the tarball
cd /tmp/tarball rm -rf /tmp/tarball/openacs-4/CVS -tar cz -f dotlrn-2.0.0a1.tar.gz openacs -
Test the new tarball
Update on the site
Prev Home Next Add the Service to CVS - OPTIONAL Up Part�IV.�For OpenACS Platform Developers
docs@openacs.orgView comments on this page at openacs.org +tar cz -f dotlrn-2.0.0a1.tar.gz openacs +Test the new tarball
Update on the site
Prev Home Next Add the Service to CVS - OPTIONAL Up Part�IV.�For OpenACS Platform Developers
docs@openacs.orgView comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/request-processor.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/request-processor.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/request-processor.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/request-processor.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,32 +1,32 @@ -The Request Processor +
The Request Processor By Pete Su
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.-This document is a brief introduction to the OpenACS 5.0.0a1 Request Processor; +This document is a brief introduction to the OpenACS 5.0.0a4 Request Processor; more details can be found in the OpenACS 4 Request Processor Design. Here we cover the high level concepts behind the system, and implications and usage for the application developer.
-The 5.0.0a1 Request Processor is a global filter and set of Tcl procs that +The 5.0.0a4 Request Processor is a global filter and set of Tcl procs that respond to every incoming URL reaching the server. The following diagram summarizes the stages of the request processor assuming a URL request like http://someserver.com/notes/somepage.adp. -
[D]+
[D]
- Stage 1: Search Site Map
The first thing the RP does is to map the given URL to the appropriate physical directory in the filesystem, from which to serve content. We do this by searching the site map data model (touched on in the Packages, and further -discussed in Section�, “Writing OpenACS 5.0.0a1 Application Pages”). This data model maps URLs to objects representing +discussed in Section�, “Writing OpenACS 5.0.0a4 Application Pages”). This data model maps URLs to objects representing content, and these objects are typically package instances.
After looking up the appropriate object, the RP stores the URL, the ID of the object it found, and the package and package instance the object belongs to into the environment of the connection. This environment can be queried using the ad_conn procedure, -which is described in detail in OpenACS 4 Request Processor Design. The page +which is described in detail in OpenACS 4 Request Processor Design. The page development tutorial shows you how to use this interface to make your pages aware of which instance was requested.
- Stage 2: Authentication
@@ -37,7 +37,7 @@ extracts or sets up new session tokens for the user.
- Stage 3: Authorization
Next, the Request Processor checks if the user has appropriate access -privileges to the requested part of the site. In OpenACS 5.0.0a1, access control +privileges to the requested part of the site. In OpenACS 5.0.0a4, access control is dictated by the permissions system. In this case, the RP checks if the user has "read" priviledges on the object in the site map specified by the URL. This object is typically Index: openacs-4/packages/acs-core-docs/www/requirements-template.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/requirements-template.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/requirements-template.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/requirements-template.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -
System/Application Requirements Template By You
+System/Application Requirements Template By You
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.For guidelines writing requirements, take a look - at the quality standards, along with a good example, such as OpenACS 5.0.0a1 Package Manager Requirements. + at the quality standards, along with a good example, such as OpenACS 5.0.0a4 Package Manager Requirements.
Besides writing requirements in natural language, consider using the following techniques as needed: Index: openacs-4/packages/acs-core-docs/www/rp-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/rp-design.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/rp-design.html 28 Oct 2003 22:07:36 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/rp-design.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -
OpenACS 4 Request Processor Design +
OpenACS 4 Request Processor Design by Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -12,7 +12,7 @@ connecting user, and make sure that he is authorized to perform the given request. If these steps succeed, then the request processor must locate the file that is associated with the specified URL, and serve the content it -provides to the browser.
+provides to the browser.
pageroot -- Any directory that contains scripts and/or static files intended to be served in response to HTTP requests. A typical OpenACS installation is required to serve files from multiple pageroots.
global pageroot Index: openacs-4/packages/acs-core-docs/www/rp-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/rp-requirements.html,v diff -u -N -r1.12 -r1.13 --- openacs-4/packages/acs-core-docs/www/rp-requirements.html 28 Oct 2003 22:07:36 -0000 1.12 +++ openacs-4/packages/acs-core-docs/www/rp-requirements.html 31 Oct 2003 10:54:20 -0000 1.13 @@ -1,4 +1,4 @@ -
OpenACS 4 Request Processor Requirements +
OpenACS 4 Request Processor Requirements by Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/security-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-design.html,v diff -u -N -r1.14 -r1.15 --- openacs-4/packages/acs-core-docs/www/security-design.html 28 Oct 2003 22:07:36 -0000 1.14 +++ openacs-4/packages/acs-core-docs/www/security-design.html 31 Oct 2003 10:54:20 -0000 1.15 @@ -1,4 +1,4 @@ -OpenACS 4 Security Design +
OpenACS 4 Security Design by Richard Li, Archit Shah
OpenACS docs are written by the named authors, and may be edited Index: openacs-4/packages/acs-core-docs/www/security-notes.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-notes.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/security-notes.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/security-notes.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -OpenACS 4 Security Notes +
OpenACS 4 Security Notes by Richard Li
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/security-requirements.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/security-requirements.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/security-requirements.html 28 Oct 2003 22:07:37 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/security-requirements.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Security Requirements +
OpenACS 4 Security Requirements by Richard Li
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/subsites-design.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites-design.html,v diff -u -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/subsites-design.html 28 Oct 2003 22:07:37 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/subsites-design.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Subsites Design Document +
OpenACS 4 Subsites Design Document by Rafael H. Schloming
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -209,4 +209,4 @@ a particular configuration of site nodes/packages. As we build more fundamental applications that can be applied in more general areas, this feature will become more and more in demand since more problems will be -solvable by configuration instead of coding.
Prev Home Next OpenACS 4 Subsites Requirements Up OpenACS 5.0.0a1 Package Manager Requirements
docs@openacs.orgView comments on this page at openacs.org +solvable by configuration instead of coding.
Prev Home Next OpenACS 4 Subsites Requirements Up OpenACS 5.0.0a4 Package Manager Requirements
docs@openacs.orgView comments on this page at openacs.org 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 -N -r1.13 -r1.14 --- openacs-4/packages/acs-core-docs/www/subsites-requirements.html 28 Oct 2003 22:07:37 -0000 1.13 +++ openacs-4/packages/acs-core-docs/www/subsites-requirements.html 31 Oct 2003 10:54:20 -0000 1.14 @@ -1,4 +1,4 @@ -OpenACS 4 Subsites Requirements +
OpenACS 4 Subsites Requirements by Rafael H. Schloming and Dennis Gregorovic
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. Index: openacs-4/packages/acs-core-docs/www/subsites.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/subsites.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/subsites.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/subsites.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -Writing OpenACS 5.0.0a1 Application Pages +
Writing OpenACS 5.0.0a4 Application Pages By Rafael H. Schloming and Pete Su
@@ -7,15 +7,15 @@In this document, we'll examine the user interface pages of the Notes application in more detail, covering two separate aspects of page -development in OpenACS 5.0.0a1. First, we'll talk about the code needed to make +development in OpenACS 5.0.0a4. First, we'll talk about the code needed to make your pages aware of which application instance they are running in. Second, we'll talk about using the form builder to develop -form-based user interfaces in OpenACS 5.0.0a1. While these seem like unrelated +form-based user interfaces in OpenACS 5.0.0a4. While these seem like unrelated topics, they both come up in the example page that we are going to look at, so it makes sense to address them at the same time.
-As you will recall from the packages tutorial, the Request -Processor (RP) and Package Manager (APM) in OpenACS 5.0.0a1 allow site +As you will recall from the packages tutorial, the Request +Processor (RP) and Package Manager (APM) in OpenACS 5.0.0a4 allow site administrators to define an arbitrary mapping from URLs in the site to objects representing content. These objects may represent single files, or entire applications. The APM uses the site map to map @@ -256,15 +256,15 @@ visible to that user. The end result is a site where users can come and write notes to themselves.
-This is a good example of the leverage available in the OpenACS 5.0.0a1 +This is a good example of the leverage available in the OpenACS 5.0.0a4 system. The code that we have written for Notes is not at all more complex than a similar application without access control or site map awareness. By adding a small amount of code, we have taken a small, simple, and special purpose application to something that has the potential to be a very useful, general-purpose tool, complete with multi-user features, access control, and centralized administration.
-In OpenACS 5.0.0a1, application pages and scripts can be aware of the package +In OpenACS 5.0.0a4, application pages and scripts can be aware of the package instance, or subsite in which they are executing. This is a powerful general purpose mechanism that can be used to structure web services in very flexible ways. @@ -276,4 +276,4 @@
We also saw how to use the templating system's forms API in a simple way, to create forms based pages with minimal duplication of code. -
($Id$)View comments on this page at openacs.org +($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/tcl-doc.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tcl-doc.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/tcl-doc.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/tcl-doc.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,4 +1,4 @@ -Documenting Tcl Files: Page Contracts and Libraries +
Documenting Tcl Files: Page Contracts and Libraries by Jon Salz on 3 July 2000
OpenACS docs are written by the named authors, and may be edited Index: openacs-4/packages/acs-core-docs/www/templates.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/templates.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/templates.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/templates.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,8 +1,8 @@ -Using Templates in OpenACS 5.0.0a1 By Pete Su
+Using Templates in OpenACS 5.0.0a4 By Pete Su
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.-The OpenACS 5.0.0a1 Template System (ATS) is designed to allow developers to +The OpenACS 5.0.0a4 Template System (ATS) is designed to allow developers to cleanly separate application logic from display logic. The intent is to have all of the logic related to manipulating the database and other application state data in one @@ -159,7 +159,7 @@
Templates separate application logic from display logic by requiring the developer to write pages in two stages, one file for database -queries and application logic, and another for display. In OpenACS 5.0.0a1, the +queries and application logic, and another for display. In OpenACS 5.0.0a4, the logic part of the page is just a .tcl that sets up data sources that are used by the display part of the page. The display part of the page is an .adp file with some Index: openacs-4/packages/acs-core-docs/www/tutorial-advanced.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-advanced.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/tutorial-advanced.html 28 Oct 2003 22:18:47 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/tutorial-advanced.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1,16 +1,16 @@ -
Advanced Topics Important
This section is a work in progress.
+
Advanced Topics Important
This section is a work in progress.
by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -This tutorial covers topics which are not essential to creating a minimal working package. Each section can be used independently of all of the others; all sections assume that you've completed the basic tutorial.
How to enforce security so that users can't change other users records
How to use the content management tables so that ... what?
How to change the default stylesheets for Form Builder HTML forms.
How to make your package searchable with OpenFTS/Oracle
How to make your package send email notifications
How to prepare pagelets for inclusion in other pages
How and when to put procedures in a tcl procedure library
How to add general_comments to your pages
More on ad_form - data validation, other stuff. (plan to draw from Jon Griffin's doc)
How and when to implement caching
partialquery in xql
How to use the html/text entry widget to get the - "does this look right" confirm page
APM package dependencies
It's time to document. For the tutorial we'll use pre-written documentation. When creating a package from scratch, start by copying the documentation template from /var/lib/aolserver/openacs-dev/packages/acs-core-docs/xml/docs/xml/package-documentation-template.xml @@ -60,7 +60,7 @@ Writing bi01.html for bibliography Writing index.html for book [service0@yourserver xml]$
Verify that the documentation was generated and reflects - your changes by browsing to http://yoursite:8000/samplenote/doc
Before you do any more work, make sure that your work is + your changes by browsing to http://yoursite:8000/samplenote/doc
Before you do any more work, make sure that your work is protected by putting it all into cvs. The cvs add command is not recursive, so you'll have to traverse the directory tree manually and add as you go. (More on @@ -120,7 +120,7 @@ initial revision: 1.1 done (many lines omitted) -[service0@yourserver samplenote]$
We need a way to delete records. We'll create a +[service0@yourserver samplenote]$
We need a way to delete records. We'll create a recursive confirmation page.
Add this column to the table_def in index.tcl
{delete "" {} {<td><a href="note-delete?note_id=$note_id">Delete</a></td>}}Create the delete confirmation/execution page.
[service0@yourserver www]$ emacs note-delete.tclad_page_contract { A page that gets confirmation and then delete notes. @@ -180,7 +180,7 @@ <formtemplate id="note-del-confirm"></formtemplate> </form>The ADP is very simple. The formtemplate tag outputs the HTML -form generated by the ad_form command with the matching name. Test it by adding the new files in the APM and then deleting a few samplenotes.
You can track comments for any ACS Object. Here we'll track +form generated by the ad_form command with the matching name. Test it by adding the new files in the APM and then deleting a few samplenotes.
You can track comments for any ACS Object. Here we'll track comments for notes. On the notes.tcl/adp pair, which is used to display individual notes, we want to put a link to add comments at the bottom of the screen. If there are any comments, we want to @@ -201,13 +201,13 @@ there are comments. Then you pass the note id, which is also the acs_object id.
We put our two new variables in the notes.adp page.
<a href="@comment_add_url@">Add a comment</a> -@comments_html@View comments on this page at openacs.org + /tmp.View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/tutorial-database.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-database.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/tutorial-database.html 28 Oct 2003 22:18:47 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/tutorial-database.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1,8 +1,8 @@ -Setting Up Database Objects +
Setting Up Database Objects by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -We create all database objects with scripts in the myfirstpackage/sql/ directory. All database scripts are database-specific and are thus in either the myfirstpackage/sql/oracle or @@ -37,7 +37,7 @@ @author which will be picked up by the API browser. The string $Id$ will automatically be - expanded when the file is checked in to cvs.
[service0@yourserver postgresql]$ emacs myfirstpackage-create.sqlPaste this into the file and save and close.
Figure�8.2.�Database Creation Script - master create file
-- + expanded when the file is checked in to cvs.[service0@yourserver postgresql]$ emacs myfirstpackage-create.sqlPaste this into the file and save and close.
Figure�7.2.�Database Creation Script - master create file
-- -- @author rhs@mit.edu -- @cvs-id $Id$ -- @@ -57,7 +57,7 @@ object. Notice the use of "mfp." This token, derived from "My First Package," ensures that our object is unlikely to conflict with objects from other packages.Create a database file to drop everything if the package - is uninstalled.
[service0@yourserver postgresql]$ emacs myfirstpackage-drop.sqlFigure�8.3.�Database deletion script
-- packages/myfirstpackage/sql/myfirstpackage-drop.sql + is uninstalled.[service0@yourserver postgresql]$ emacs myfirstpackage-drop.sqlFigure�7.3.�Database deletion script
-- packages/myfirstpackage/sql/myfirstpackage-drop.sql -- drop script -- -- @author rhs@mit.edu Index: openacs-4/packages/acs-core-docs/www/tutorial-debug.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-debug.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/tutorial-debug.html 28 Oct 2003 22:18:47 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/tutorial-debug.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1,8 +1,8 @@ -Debugging and Automated Testing Important
This section is a work in progress.
+
Debugging and Automated Testing Important
This section is a work in progress.
by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -Developer Support.�The Developer Support package adds several goodies: debug information for every page; the ability to log comments to the page instead of the error log, and fast user switching so that you can test pages as anonymous and as dummy users without logging @@ -24,17 +24,17 @@ ?�searches�backward�
/�searches�forward.�
����������-
Make a list of basic tests to make sure it works
Test Num Action Expected Result 001 Browse to the index page while not logged in and + Make a list of basic tests to make sure it works
Test Num Action Expected Result 001 Browse to the index page while not logged in and while one or more notes exist. No edit or delete or add links should appear. 002 Browse to the index page while logged in. An Edit link should appear. Click on it. Fill out the form and click Submit. The text added in the form should be visible on the index page. Other things to test: try to delete someone else's note. Try to delete your own note. Edit your own note. - Search for a note.
+ Search for a note.
by Simon Carstensen
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -It seems to me that a lot of people have been asking for some guidelines on how to write automated tests. I've done several tests by now and have found the process to be extremely easy and useful. It's a joy to work with automated testing Index: openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html 28 Oct 2003 22:18:47 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/tutorial-newpackage.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1,8 +1,8 @@ -
Creating a Package +
Creating a Package by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -To start developing new code in OpenACS, we build a new package. A package is a a discrete collection of web pages, tcl code, and database tables and procedures. A package with user interface is called an application; a package which provides @@ -15,11 +15,11 @@ writing web pages, debugging, and automatic regression testing.
In this tutorial, we will make an application package for displaying a list of text notes. -
You will need:
A computer with a working installation of +
You will need:
A computer with a working installation of OpenACS. If you don't have this, see Chapter�2, Installation Overview.
Example files, which are included in the -standard OpenACS 5.0.0a1 distribution. -
We use the ACS Package Manager (APM) to add, remove, and +standard OpenACS 5.0.0a4 distribution. +
We use the ACS Package Manager (APM) to add, remove, and upgrade packages. It handles package meta-data, such as lists of files that belong in the package. Each package is uniquely identified by a package key. To start developing a new @@ -51,7 +51,7 @@
This creates a package rooted at /var/lib/aolserver/service0/packages/myfirstpackage. This is the "home directory" of our new package, and all - files in the package will be within this directory.
In order to see your work in progress, you must create a + files in the package will be within this directory.
In order to see your work in progress, you must create a map between the URL space of incoming requests and the package. You do this by mounting the package in the Site Map. This creates a link between the incoming URL and an @@ -73,4 +73,4 @@ click New.
By mounting the package, we've caused all requests to http://yourserver.test:8000/myfirstpackage - to be satisfied from the files at /var/lib/aolserver/service0/packages/myfirstpackage/www.
View comments on this page at openacs.org + to be satisfied from the files at /var/lib/aolserver/service0/packages/myfirstpackage/www.View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/tutorial-pages.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial-pages.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/tutorial-pages.html 28 Oct 2003 22:18:47 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/tutorial-pages.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1,8 +1,8 @@ -Creating Web Pages +
Creating Web Pages by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. -Each user-visible page in your package has, typically, three parts. The xql file contains any database queries, the tcl file holds the procedural logic for the page and does things like check permissions, invoke the database queries, and modify @@ -69,7 +69,7 @@ </queryset>
Create the user-visible page.
[service0@yourserver www]$ emacs index.adpThe first line indicates that this page should be rendered within the the master template, which defaults to /web/service0/www/default-master. The second line passes a title variable to the master template. The third line inserts the contents of the variable table_html. The last line is a link to a page we haven't created yet.
<master> <property name="title">Sample Notes</property> @table_html@ -<p><a href="note-edit">Add a note</a></p>Before we can test these files, we have to notify the +<p><a href="note-edit">Add a note</a></p>
Before we can test these files, we have to notify the package manager that they exist. (More precisely, the tcl and adp will work fine as-is, but the xql file will not be recognized until we tell the APM about it.).
Go to http://yourserver.test:8000/acs-admin/apm
Click on the samplenote link
Click Manage file information
@@ -85,7 +85,7 @@ to load the contents of the XQL into memory so that it can be used, and to reload it whenever the file is changed. The watch will last until the server is restarted. -
Now that the APM is aware of your files, check to make sure that the self-documenting code is working.
Browse to http://yourserver.test:8000/api-doc/
Click Notes 0.1d
Click Content Pages
Click index.tcl and examine the results.
Now that the APM is aware of your files, check to make sure that the self-documenting code is working.
Browse to http://yourserver.test:8000/api-doc/
Click Notes 0.1d
Click Content Pages
Click index.tcl and examine the results.
Go to http://yourserver.test:8000/note/. You should see this:
Sample Notes Your Workspace : Main Site : Sample Note @@ -94,7 +94,7 @@ Add a note. foo@yourserver.test -Since our table is empty, it's a pretty boring page. So next we'll make it possible to add records.
If you get any other output, such as an error message, skip to Section�, “Debugging and Automated Testing”.
We'll create a single page to handle both adding and +
Since our table is empty, it's a pretty boring page. So next we'll make it possible to add records.
If you get any other output, such as an error message, skip to Section�, “Debugging and Automated Testing”.
We'll create a single page to handle both adding and editing records. In this recursive approach, the same tcl function can present a blank HTML form, present the same form pre-loaded with an existing record, and handle the resulting @@ -173,7 +173,7 @@ title, for both variables but wrap it in curly brackets for context so that the spaces aren't interpreted separators. The formtemplate tag outputs the form - html with the matching name.
Go to the APM as before and reload. Then test all this by going to the package home page and adding and editing a few records.
Put your new work into source control.
[service0@yourserver www]$ cvs add *.adp *.tcl *.xql + html with the matching name.Go to the APM as before and reload. Then test all this by going to the package home page and adding and editing a few records.
Put your new work into source control.
[service0@yourserver www]$ cvs add *.adp *.tcl *.xql cvs add: cannot add special file `CVS'; skipping cvs add: doc/CVS already exists cvs add: scheduling file `index.adp' for addition Index: openacs-4/packages/acs-core-docs/www/tutorial.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/tutorial.html,v diff -u -N -r1.5 -r1.6 --- openacs-4/packages/acs-core-docs/www/tutorial.html 28 Oct 2003 22:07:37 -0000 1.5 +++ openacs-4/packages/acs-core-docs/www/tutorial.html 31 Oct 2003 10:54:20 -0000 1.6 @@ -1 +1 @@ -Chapter�8.�Development Tutorial View comments on this page at openacs.org +Chapter�7.�Development Tutorial View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/unix-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/unix-installation.html,v diff -u -N -r1.1 -r1.2 --- openacs-4/packages/acs-core-docs/www/unix-installation.html 28 Oct 2003 22:18:47 -0000 1.1 +++ openacs-4/packages/acs-core-docs/www/unix-installation.html 31 Oct 2003 10:54:20 -0000 1.2 @@ -1,4 +1,4 @@ -Install Unix-like system and supporting software +
Install Unix-like system and supporting software by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -9,4 +9,4 @@ DocBook SGML)daemontools (install from source)
a Mail Transport Agent, such as exim or sendmail (or install qmail from source)
To install a machine to the specifications of the Reference Platform, do the walkthrough of the - Red Hat 8.0 Install for OpenACS.
($Id$)View comments on this page at openacs.org + Red Hat 8.0 Install for OpenACS.($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/upgrade-detail.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/Attic/upgrade-detail.html,v diff -u -N -r1.10 -r1.11 --- openacs-4/packages/acs-core-docs/www/upgrade-detail.html 28 Oct 2003 22:18:47 -0000 1.10 +++ openacs-4/packages/acs-core-docs/www/upgrade-detail.html 31 Oct 2003 10:54:20 -0000 1.11 @@ -1,4 +1,4 @@ -Support for upgrades. +
Support for upgrades. by Joel Aufrecht
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff. @@ -9,13 +9,13 @@ manual intervention should be required. If you are running OpenACS prior to 4.5, upgrading will require manual effort.The required platform for OpenACS 4.6 is the same as 4.5, with the excepion of OpenFTS. You now need OpenFTS 0.3.2, not 0.2. - OpenACS 4.6 does not support PostGreSQL 7.3.
A computer with OpenACS 4.5.
Required for Full Text Search on PostGreSQL: OpenFTS 0.3.2
OpenACS consists of files and a database schema. The files + OpenACS 4.6 does not support PostGreSQL 7.3.
A computer with OpenACS 4.5.
Required for Full Text Search on PostGreSQL: OpenFTS 0.3.2
OpenACS consists of files and a database schema. The files in the OpenACS 4.6 tarball include database upgrade scripts. To start the upgrade, replace your existing files with the new files and then restart the server. Then, browse to the APM, which will detect the new packages and offer to run the appropriate database upgrade scripts. After restarting the server again, the upgrade is - complete.
Make a Backup.�Back up the database and file system (see Section�, “Snapshot backup and recovery”).
OPTIONAL: Upgrade OpenFTS.�OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. If you have OpenFTS 0.2, you'll need to upgrade to to OpenFTS 0.3.2. This is backwards-compatible - + complete.
Make a Backup.�Back up the database and file system (see Section�, “Snapshot backup and recovery”).
OPTIONAL: Upgrade OpenFTS.�OpenACS Full Text Search requires several pieces: the OpenFTS code, some database functions, and the OpenFTS Engine. If you have OpenFTS 0.2, you'll need to upgrade to to OpenFTS 0.3.2. This is backwards-compatible - completing this step will not break a working OpenFTS Engine from 4.5.
Uninstall the old OpenFTS Engine
Browse to http://yourserver/openfts.
Click Administration.
Click Drop OpenFTS Engine
Build and install the new OpenFTS driver and supporting tcl procedures. (This section of shell code is not fully documented; please exercise care.)
cd /usr/local/src/ @@ -94,6 +94,6 @@ upgrade, plus any new packages you want. It's safest to upgrade the kernel by itself, and then come back and upgrade the rest of the - desired packages in a second pass.On the next screen, click Install Packages
When prompted, restart the server:
[root@localhost root]# restart-aolserver openacs-dev
Wait a minute, then browse to the package manager, http://yourserver/acs-admin/apm.
Check that the kernel upgrade worked by clicking All and making sure that acs-kernel version is 5.0.0a1.
OPTIONAL: Install the new OpenFTS Engine.�If you want to upgrade the OpenFTS Engine, do these + desired packages in a second pass.
On the next screen, click Install Packages
When prompted, restart the server:
[root@localhost root]# restart-aolserver openacs-dev
Wait a minute, then browse to the package manager, http://yourserver/acs-admin/apm.
Check that the kernel upgrade worked by clicking All and making sure that acs-kernel version is 5.0.0a4.
OPTIONAL: Install the new OpenFTS Engine.�If you want to upgrade the OpenFTS Engine, do these steps. (You must have already upgraded the OpenFTS driver to - 0.3.2.)
Browse to http://yourserver/admin/site-map
On the openfts line, click on set parameters.
Change the value of openfts_tcl_src_path from /usr/local/src/Search-OpenFTS-tcl-0.2/ to /usr/local/src/Search-OpenFTS-tcl-0.3.2/
Click Set Parameters
[root@localhost root]# restart-aolserver openacs-dev
Browse to http://yourserver/openfts
Click Administration.
Click Initialize OpenFTS Engine
Rollback.�If anything goes wrong, roll back to the backup snapshot.
($Id$)View comments on this page at openacs.org + 0.3.2.)
Browse to http://yourserver/admin/site-map
On the openfts line, click on set parameters.
Change the value of openfts_tcl_src_path from /usr/local/src/Search-OpenFTS-tcl-0.2/ to /usr/local/src/Search-OpenFTS-tcl-0.3.2/
Click Set Parameters
[root@localhost root]# restart-aolserver openacs-dev
Browse to http://yourserver/openfts
Click Administration.
Click Initialize OpenFTS Engine
Rollback.�If anything goes wrong, roll back to the backup snapshot.
($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/upgrade.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/upgrade.html,v diff -u -N -r1.8 -r1.9 --- openacs-4/packages/acs-core-docs/www/upgrade.html 28 Oct 2003 22:07:37 -0000 1.8 +++ openacs-4/packages/acs-core-docs/www/upgrade.html 31 Oct 2003 10:54:20 -0000 1.9 @@ -1 +1 @@ -Chapter�6.�Upgrading Table of Contents
View comments on this page at openacs.org +Chapter�5.�Upgrading Table of Contents
View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/win2k-installation.html =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/win2k-installation.html,v diff -u -N -r1.16 -r1.17 --- openacs-4/packages/acs-core-docs/www/win2k-installation.html 28 Oct 2003 22:18:47 -0000 1.16 +++ openacs-4/packages/acs-core-docs/www/win2k-installation.html 31 Oct 2003 10:54:20 -0000 1.17 @@ -1,9 +1,9 @@ -OpenACS Installation Guide for Windows2000 By Matthew Burke and Curtis Galloway
+OpenACS Installation Guide for Windows2000 By Matthew Burke and Curtis Galloway
OpenACS docs are written by the named authors, and may be edited by OpenACS documentation staff.NOTE: These instructions were valid for ACS v4, but have not been tested with OpenACS. Currently - (8/2002), the best option to get OpenACS 5.0.0a1 running on Windows + (8/2002), the best option to get OpenACS 5.0.0a4 running on Windows is to use VMware and John Sequeira's Oasis VM distribution @@ -253,4 +253,4 @@
In the services control panel you should see two services: AOLserver-lintcollectors and AOLserver-iguanasdirect. -
($Id$)View comments on this page at openacs.org +($Id$)View comments on this page at openacs.org Index: openacs-4/packages/acs-core-docs/www/xml/Makefile =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/Makefile,v diff -u -N -r1.7 -r1.8 --- openacs-4/packages/acs-core-docs/www/xml/Makefile 10 Oct 2003 14:54:59 -0000 1.7 +++ openacs-4/packages/acs-core-docs/www/xml/Makefile 31 Oct 2003 10:54:07 -0000 1.8 @@ -30,7 +30,8 @@ cp -u openacs.css .. html: prelim - cd .. ; $(XSLTPROC) --nonet --novalid --xinclude xml/openacs.xsl xml/index.xml +# adding --nonet --novalid is much faster but generates a bunch of bogus error messages + cd .. ; $(XSLTPROC) --novalid --nonet --xinclude xml/openacs.xsl xml/index.xml pdf: html # $(HTMLDOC) --batch ../for-everyone.book ../for-admins.book ../for-developers.book Index: openacs-4/packages/acs-core-docs/www/xml/variables.ent =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-core-docs/www/xml/variables.ent,v diff -u -N -r1.2 -r1.3 --- openacs-4/packages/acs-core-docs/www/xml/variables.ent 14 Oct 2003 11:00:53 -0000 1.2 +++ openacs-4/packages/acs-core-docs/www/xml/variables.ent 31 Oct 2003 10:54:07 -0000 1.3 @@ -1,5 +1,5 @@ - - - + + +