(More information: the section called “IMS Sync driver design”, The IMS 1.1 spec)
-Troubleshooting. If you're having trouble figuring out some the values for the ldapm, see this useful -page on setting up Active Directory integration with +page on setting up Active Directory integration with Bugzilla. It explains how distinguished names are defined in Active Directory, and how to test that you have the correct values for connectivity and base DN using the OpenLDAP command-line @@ -145,9 +145,9 @@ Hospital for underwriting this work.
OpenACS supports PAM authetication via the ns_pam module in @@ -18,16 +18,15 @@ Add PAM support to AOLserver. OpenACS supports PAM support via the PAM AOLserver module. PAM is system of modular support, and can provide local (unix password), RADIUS, -LDAP (more information), and other forms of +LDAP (more information), and other forms of authentication. Note that due to security issues, the AOLserver PAM module cannot be used for local password authentication.
Compile
and install ns_pam. Download the tarball to /tmp
.
Debian users: first do apt-get
install libpam-dev
-
-[root\@yourserver root]#cd /usr/local/src/aolserver
+[root\@yourserver root]#cd /usr/local/src/aolserver
[root\@yourserver aolserver]#tar xzf /tmp/ns_pam-0.1.tar.gz
[root\@yourserver aolserver]#cd nspam
[root\@yourserver nspam]#make
@@ -63,8 +62,7 @@RADIUS in PAM.
Untar the pam_radius tarball and compile and install. (more -information)
-[root\@yourserver root]#cd /usr/local/src/
+information)[root\@yourserver root]#cd /usr/local/src/
[root\@yourserver src]#tar xf /tmp/pam_radius-1.3.16.tar
[root\@yourserver src]#cd pam_radius-1.3.16
[root\@yourserver pam_radius-1.3.16]#make
@@ -93,23 +91,19 @@Modify the AOLserver configuration file to use this PAM domain. Edit the line
-ns_param PamDomain "service0" -
So that the value of the parameter matches the name (just the -file name, not the fully pathed name) of the domain file in
-/etc/pam.d/ -+ns_param PamDomain "service0"So that the value of the parameter matches the name (just the +file name, not the fully pathed name) of the domain file in
/etc/pam.d/
-LDAP in PAM. more information +LDAP in PAM. more information
Modify the AOLserver configuration file to support ns_pam.
In /var/lib/aolserver/service0/etc/config.tcl
, enable
the nspam module by uncommenting this line:
-ns_param nspam ${bindir}/nspam.so -+ns_param nspam ${bindir}/nspam.so
@@ -132,9 +126,9 @@
-Consolidation before the leap; IMS Enterprise 1.1: This +Consolidation before the leap; IMS Enterprise 1.1: This article says that IMS Enterprise 1.1 (current version) does not address the communication model, which is critically missing for real seamless interoperability. IMS Enterprise 2.0 will address this, but Blackboard, who's influential in the IMS committee, -is adopting OKI's programming interrfaces for this.
Please file bugs in the Bug Tracker.
+To enable the 'rebuild server' link, edit the file -/usr/local/bin/rebuild-server.sh:
-#!/bin/sh +/usr/local/bin/rebuild-server.sh:#!/bin/sh # script to trigger a server rebuild # hard-coding the valid server names here for some minimal security @@ -67,18 +63,16 @@ exit;; esac -sudo /home/$1/install/install.sh 2>&1 -and allow the master user to +sudo /home/$1/install/install.sh 2>&1
and allow the master user to execute this file as root (this is a limitation of the automatic install script, which must be root). In /etc/sudoers, include a line:
-master ALL = NOPASSWD: /usr/local/bin/rebuild-server.sh -+master ALL = NOPASSWD: /usr/local/bin/rebuild-server.sh
To load the XML parser, download and untar the distribution. Load the class package lib/xmlparserv2.jar into Oracle from a shell prompt:
--$ loadjava -user user/password xmlparserv2.jar -+
$ loadjava -user user/password xmlparserv2.jar
Finally, load the SQLJ files in packages/acs-content-repository/java:
--$ loadjava -user user/password -resolve *.sqlj -+
$ loadjava -user user/password -resolve *.sqlj
Installation of the data model and API should now be complete.
If you experience errors on a UNIX system, check the following:
-(SID_DESC = (SID_NAME = PLSExtProc) (ORACLE_HOME = /ora8/m01/app/oracle/product/8.1.6) (ENVS = LD_LIBRARY_PATH=/ora8/m01/app/oracle/product/8.1.6/lib:/usr/lib:/lib:/usr/openwin/lib:/ora8/m01/app/oracle/product/8.1.6/ctx/lib) (PROGRAM = extproc) ) --
If your searches are still failing even after following these +
If your searches are still failing even after following these instructions, try a simple test case to determine whether the problem has something to do with the -content repository data model itself.
-Create a simple table to hold some test documents:
--create table cr_test_documents ( +create table cr_test_documents ( doc_id integer primary key, author varchar2(30), format varchar2(30), title varchar2(256), doc blob -); -+);
Create an Intermedia preference to specify INSO filtering:
--begin +begin ctx_ddl.create_preference ( preference_name => 'CONTENT_FILTER_PREF', object_name => 'INSO_FILTER' - ); -+ );
If this preference has already been created, this step will cause an error that you can ignore.
Create an Intermedia index on the test table with INSO filtering:
create index cr_test_documents_idx on cr_test_documents ( doc ) indextype is ctxsys.context - parameters ('FILTER content_filter_pref' ); -+ parameters ('FILTER content_filter_pref' );
You can use SQL*Loader to load some documents into the test table. First create a control file named cr-test-docs.ctl:
--load data +load data INFILE 'cr-test-docs.data' INTO TABLE cr_test_documents APPEND @@ -51,16 +45,13 @@ format, title, ext_fname FILLER CHAR(80), - doc LOBFILE(ext_fname) TERMINATED BY EOF) -+ doc LOBFILE(ext_fname) TERMINATED BY EOF)
Copy any number of documents (Microsoft Word, PDF, text, HTML, etc.) to the file system of your database server. Create a data file with an entry for each document you would like to load. This is simply a comma-separated text file:
--word, Simple Story,sample-docs/simple.doc, -excel, Simple Spreadsheet,sample-docs/simple.xls -+
word, Simple Story,sample-docs/simple.doc, +excel, Simple Spreadsheet,sample-docs/simple.xls
Load the documents from the command line:
$ sqlldr userid=cms/cms control=cr-test-docs.ctl log=cr-test-docs.log @@ -69,8 +60,7 @@ (c) Copyright 1999 Oracle Corporation. All rights reserved. -Commit point reached - logical record count 2 -+Commit point reached - logical record count 2
Once the documents have been loaded, rebuild the index and run some test queries:
@@ -87,5 +77,5 @@ karlg\@arsdigita.comFirst of all, let's get some terminology out of the way. Columns of a table are referred to as attributes in @@ -71,8 +70,7 @@ Title - want versions Description - want versions Task Number - do NOT want versions - - +
You will have two tables: one with versioned attributes, and one without versioned attributes.
@@ -99,8 +97,7 @@ description varchar(4000) ); - - +Unversioned portion:
+create table pm_tasks ( @@ -114,8 +111,7 @@ task_number integer ) - -
One thing you have to be careful of when creating these tables
is that there are no columns that have the same names as any of the
columns in the cr_items
and cr_revisions
@@ -153,8 +149,7 @@
'task_id', -- id_column
'content_revision.revision_name'
);
-
-
+
You then need to add in all the attributes, so that the content repository can do some magic things behind the scenes. The content repository doesn't know about what's inside of the @@ -195,8 +190,7 @@ null, -- default value 'numeric' -- column_spec ); - - +
Side effect: once you've created the
content type, the content repository creates a view for you called
@@ -291,8 +285,7 @@
null,
null,
'integer constraint pm_project_comp_fk references organizations'
-);
-
+);
I have no idea of whether or not that is supposed to be legal, but
I believe it works. Jun was the one who originally talked about
Index: openacs-4/packages/acs-content-repository/www/doc/uninstall.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/uninstall.adp,v
diff -u -N -r1.3 -r1.4
--- openacs-4/packages/acs-content-repository/www/doc/uninstall.adp 7 Aug 2017 23:47:47 -0000 1.3
+++ openacs-4/packages/acs-content-repository/www/doc/uninstall.adp 30 Apr 2018 08:15:07 -0000 1.4
@@ -32,5 +32,5 @@
karlg\@arsdigita.com
-Last revised: $Id: uninstall.html,v 1.1.1.1.30.1 2016/06/22
-07:40:41 gustafn Exp $
+Last revised: $Id: uninstall.html,v 1.2 2017/08/07 23:47:47 gustafn
+Exp $
Index: openacs-4/packages/acs-content-repository/www/doc/api/content.adp
===================================================================
RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/content.adp,v
diff -u -N -r1.3 -r1.4
--- openacs-4/packages/acs-content-repository/www/doc/api/content.adp 7 Aug 2017 23:47:47 -0000 1.3
+++ openacs-4/packages/acs-content-repository/www/doc/api/content.adp 30 Apr 2018 08:15:07 -0000 1.4
@@ -65,5 +65,5 @@
-
Last Modified: $Id: content.html,v 1.1.1.1.30.2 2016/06/22 -07:40:41 gustafn Exp $
+Last Modified: $Id: content.html,v 1.2 2017/08/07 23:47:47 +gustafn Exp $
Index: openacs-4/packages/acs-content-repository/www/doc/api/extlink.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/extlink.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/extlink.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/extlink.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,18 +11,17 @@-
External links are references to content pages on other web sites. They provide the basis for maintaining a hierarchy of "bookmarks" that may be managed in a manner analogous to other content items. In particular, external links may be tagged with keywords and related to the site's own content items.
-
-
-
Content folders contain related content items and allow content managers to group content as they see fit. Within a content folder, content items must have unique names since this is where they will @@ -21,11 +21,10 @@ from "/movies/terminator, "/movies/terminator2" respectively).
-
-
-Last Modified: $Id: folder.html,v 1.2.18.2 2016/06/22 07:40:41 -gustafn Exp $ +Last Modified: $Id: folder.html,v 1.3 2017/08/07 23:47:47 gustafn +Exp $ Index: openacs-4/packages/acs-content-repository/www/doc/api/item.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/item.adp,v diff -u -N -r1.5 -r1.6 --- openacs-4/packages/acs-content-repository/www/doc/api/item.adp 11 Apr 2018 21:35:06 -0000 1.5 +++ openacs-4/packages/acs-content-repository/www/doc/api/item.adp 30 Apr 2018 08:15:07 -0000 1.6 @@ -11,7 +11,7 @@
-
Content items store the overview of the content published on a website. The actual content is stored in content revisions. It is implemented this way so that there can be multiple versions of the @@ -22,11 +22,10 @@ exist at least one content revision pointing to this item with the actual review content.
-
-
-Last Modified: $Id: item.html,v 1.3.18.3 2017/04/21 14:53:08 -gustafn Exp $ +Last Modified: $Id: item.html,v 1.6 2018/04/11 21:35:06 hectorr Exp +$ Index: openacs-4/packages/acs-content-repository/www/doc/api/keyword.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/keyword.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/keyword.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/keyword.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,16 +11,15 @@
-
Keyword cassify a content_item. For example: If you have some press releases about dogs. You might want assigning the Keyword dog to every single content_item.
-
-
-Last Modified: $Id: keyword.html,v 1.1.1.1.30.3 2017/04/21 14:53:08 -gustafn Exp $ +Last Modified: $Id: keyword.html,v 1.2 2017/08/07 23:47:47 gustafn +Exp $ Index: openacs-4/packages/acs-content-repository/www/doc/api/permission.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/permission.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/permission.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/permission.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,16 +11,15 @@
-
Permissions can be set to allow certain users certain things. - They can be compared with the Unix filesystem permission: read, write ...
-
-
-Last Modified: $Id: permission.html,v 1.1.1.1.30.3 2017/04/21 -14:53:08 gustafn Exp $ +Last Modified: $Id: permission.html,v 1.2 2017/08/07 23:47:47 +gustafn Exp $ Index: openacs-4/packages/acs-content-repository/www/doc/api/revision.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/revision.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/revision.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/revision.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,19 +11,18 @@
-
Content revisions contain the data for content items. There is a many to one relationship between content revisions and content items. There is at most one "live" revision for every content item though. For example, there may be 5 revisions of the review for the movie "Terminator," yet only one of these may be live on the website at a given time.
-
-
-Last Modified: $Id: revision.html,v 1.1.1.1.30.2 2016/06/22 -07:40:41 gustafn Exp $ +Last Modified: $Id: revision.html,v 1.2 2017/08/07 23:47:47 gustafn +Exp $ Index: openacs-4/packages/acs-content-repository/www/doc/api/symlink.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/symlink.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/symlink.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/symlink.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,15 +11,14 @@
-
Symlinks are pointers to items within the content repository. They are simply used to create links between content items.
-
-
-Last Modified: $Id: symlink.html,v 1.2.2.2 2016/06/22 07:40:41 -gustafn Exp $ +Last Modified: $Id: symlink.html,v 1.3 2017/08/07 23:47:47 gustafn +Exp $ Index: openacs-4/packages/acs-content-repository/www/doc/api/template.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-content-repository/www/doc/api/template.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-content-repository/www/doc/api/template.adp 7 Aug 2017 23:47:47 -0000 1.3 +++ openacs-4/packages/acs-content-repository/www/doc/api/template.adp 30 Apr 2018 08:15:07 -0000 1.4 @@ -11,18 +11,17 @@
-
Templates are a special class of text objects that are used for specifying the layout of a content item. They may be mapped to content types, meaning that every item of that type will display using that template unless a specific item overrides the default by mapping to a template itself.
-
-
-
This package is used to manipulate content types and attributes Content types represent the different kind of content displayed on a website. All content items should subclass a content type.
-
-
Author: | Karl Goldstein | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Parameters: | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
- -webmaster\@dev.arsdigita.com - Last Modified: $Id: developer-support-example.html,v -1.1.1.1.28.1 2015/08/25 17:58:44 gustafn Exp $ +webmaster\@dev.arsdigita.com +Last Modified: $Id: developer-support-example.html,v 1.2 +2017/08/07 23:47:56 gustafn Exp $ Index: openacs-4/packages/acs-developer-support/www/doc/index.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-developer-support/www/doc/index.adp,v diff -u -N -r1.3 -r1.4 --- openacs-4/packages/acs-developer-support/www/doc/index.adp 7 Aug 2017 23:47:56 -0000 1.3 +++ openacs-4/packages/acs-developer-support/www/doc/index.adp 30 Apr 2018 08:17:33 -0000 1.4 @@ -50,9 +50,7 @@ grokking the error log to see what's wrong with your page? Use the ds_comment routine instead: -+-ds_comment "Foo is $foo" - Your comment will show up at the bottom of the page, beneath the Developer Information @@ -78,5 +76,5 @@ds_comment "Foo is $foo" Please file bugs in the Bug Tracker. jsalz\@mit.edu - Last Modified: $Id: index.html,v 1.1.1.1.28.2 2015/08/25 -17:58:45 gustafn Exp $ +Last Modified: $Id: index.html,v 1.2 2017/08/07 23:47:56 gustafn +Exp $ Index: openacs-4/packages/acs-lang/www/doc/i18n-design.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-lang/www/doc/i18n-design.adp,v diff -u -N -r1.6 -r1.7 --- openacs-4/packages/acs-lang/www/doc/i18n-design.adp 18 Apr 2018 08:07:33 -0000 1.6 +++ openacs-4/packages/acs-lang/www/doc/i18n-design.adp 30 Apr 2018 08:19:34 -0000 1.7 @@ -270,12 +270,12 @@ legacy tools that author in their "native" character sets, such as ShiftJIS in Japan, or BIG5 in China.So we make the convention that the template file is authored in -its effective locale's character set. For -multilingual templates, we will load the template in the site -default character set as specified by the AOLserver -OutputCharset initializatoin parameter. For now, we will -say that authoring generic multilingual adp files can and should be -done in ASCII. Eventually we can switch to using UTF8. +its effective locale's character set. For multilingual +templates, we will load the template in the site default character +set as specified by the AOLserver OutputCharset +initializatoin parameter. For now, we will say that authoring +generic multilingual adp files can and should be done in ASCII. +Eventually we can switch to using UTF8.A character set corresponding to a locale can be found using the [ad_locale charset$locale] command. The templating system should call this right after it @@ -513,22 +513,19 @@ (i.e. do nothing special): <trn>Hello</trn> - -+ Example 2: Assign the key key hello to the text string Hello and display the translated string in the user's preferred language: <trn key="hello">Hello</trn> - -+ Example 3: Specify that Bonjour needs to be registered as the French translation for the key hello (in addition to displaying the translation in the user's preferred language): <trn key="hello" lang="fr">Bonjour</trn> - -+ Example 4: Register the string and display it in the preferred language of the current user. Note that the possible values for the type parameter are determined by what has been
@@ -539,12 +536,10 @@
current web page.
<trn key="hello" type="user">Hello</trn> - - Example 5: Translates the string once at template compile time, + Example 5: Translates the string once at template compile time, using the effective local of the page. <trn key="hello" static>Hello</trn> - -+ VII. Data Model DiscussionInternationalizing the Data ModelsIndex: openacs-4/packages/acs-lang/www/doc/i18n-requirements.adp =================================================================== RCS file: /usr/local/cvsroot/openacs-4/packages/acs-lang/www/doc/i18n-requirements.adp,v diff -u -N -r1.4 -r1.5 --- openacs-4/packages/acs-lang/www/doc/i18n-requirements.adp 29 Dec 2017 10:51:45 -0000 1.4 +++ openacs-4/packages/acs-lang/www/doc/i18n-requirements.adp 30 Apr 2018 08:19:34 -0000 1.5 @@ -119,10 +119,10 @@ documentation for this software is linked off ofLI18NUX 2000 Globalization Specification: http://www.li18nux.net/ Mozilla i18N Guidelines: -http://www.mozilla.org/docs/refList/i18n/l12yGuidelines.html ISO -639:1988 Code for the representation of names of languages IANA Registry of Character Sets +http://www.mozilla.org/docs/refList/i18n/l12yGuidelines.htmlISO 639:1988 +Code for the representation of names of languages VI Requirements |