Commit a0e3f772 authored by Frank Bergmann's avatar Frank Bergmann

- Updated to OpenACS 5.9.1

parent c02b4c47
......@@ -7,19 +7,19 @@
<initial-install-p>t</initial-install-p>
<singleton-p>t</singleton-p>
<version name="5.9.0" url="http://openacs.org/repository/download/apm/acs-core-docs-5.9.0.apm">
<version name="5.9.1" url="http://openacs.org/repository/download/apm/acs-core-docs-5.9.1.apm">
<owner url="mailto:docs@openacs.org">OpenACS Documentation Team</owner>
<summary>Documentation for the OpenACS Core.</summary>
<release-date>2015-10-04</release-date>
<release-date>2017-08-06</release-date>
<vendor url="http://openacs.org">OpenACS</vendor>
<license url="http://www.gnu.org/copyleft/gpl.html">GPL</license>
<maturity>3</maturity>
<description format="text/html">Static HTML documentation for the OpenACS core (includes the DocBook sources).
</description>
<provides url="acs-core-docs" version="5.9.0"/>
<requires url="acs-kernel" version="5.9.0"/>
<requires url="acs-tcl" version="5.9.0"/>
<provides url="acs-core-docs" version="5.9.1"/>
<requires url="acs-kernel" version="5.9.1"/>
<requires url="acs-tcl" version="5.9.1"/>
<callbacks>
</callbacks>
......
<!-- Begin of navfooter.adp -->
<div class="navfooter" style="display:table;width:100%;border-top:1px dashed #ddd;border-bottom:1px dashed #ddd;padding:5px 0;">
<span style="display:table-cell;text-align:left;width:40%;padding-left:20px;">
<if @leftLink@ not nil>
<a accesskey="p" href="@leftLink@" class="arrow_box-left">@leftLabel@</a>
</if>
<br><span style="color:#696969;display:block;margin-top:3px;">@leftTitle@</span>
</span>
<span style="display:table-cell;text-align:center;width:20%;">
......@@ -9,8 +11,11 @@
<br><a accesskey="u" href="@upLink@">@upLabel@</a>
</span>
<span style="display:table-cell;text-align:right;width:40%;padding-right:20px;">
<if @rightLink@ not nil>
<a accesskey="n" href="@rightLink@" class="arrow_box">@rightLabel@</a>
<br><span style="color:#696969;display:block;margin-top:3px;">@rightTitle@</span>
</if>
<br>
<span style="color:#696969;display:block;margin-top:3px;">@rightTitle@</span>
</span>
</div>
<!-- End of navfooter.adp -->
\ No newline at end of file
......@@ -62,10 +62,14 @@
<div class="navheader" style="display:table;width:100%;border-top:1px dashed #ddd;border-bottom:1px dashed #ddd;padding:5px 0;">
<span style="display:table-cell;text-align:left;width:20%;padding-left:20px;">
<if @leftLink@ not nil>
<a accesskey="p" href="@leftLink@" class="arrow_box-left">@leftLabel@</a>
</if>
</span>
<span style="display:table-cell;text-align:center;width:60%;"><b>@title@</b></span>
<span style="display:table-cell;text-align:center;width:60%;"><strong>@title@</strong></span>
<span style="display:table-cell;text-align:right;width:20%;padding-right:20px;">
<if @rightLink@ not nil>
<a accesskey="n" href="@rightLink@" class="arrow_box">@rightLabel@</a>
</if>
</span>
</div>
\ No newline at end of file
......@@ -45,6 +45,61 @@ ad_proc -public core_docs_uninstalled_packages {} {
return [util_memoize core_docs_uninstalled_packages_internal]
}
ad_proc -public core_docs_html_redirector {args} {
Performs an internal redirect requests for .html-pages to .adp
pages if these exist.
@author Gustaf Neumann
} {
#
# There is no [ad_conn file] processed yet. Therefore, we have to
# compute the path (consider just the path after the package_url
# for file name construction).
#
set url [ad_conn url]
#
# For now, ignore all version info
#
regsub {^/doc/(current|openacs-[0-9-]+|HEAD)/} $url /doc/ url
set path [string range $url [string length [ad_conn package_url]] end]
set html_fn [acs_package_root_dir [ad_conn package_key]]/www/$path
if {[file exists $html_fn]} {
#
# true acs-core-docs
#
} elseif {[regexp {^([a-z0-9_-]+)/(.+)$} $path _ pkg path]} {
#
# package acs-core-docs
#
set html_fn [acs_package_root_dir $pkg]/www/doc/$path
#ns_log notice "... pkg doc <$html_fn>"
}
set adp_fn [file rootname $html_fn].adp
if {[file readable $adp_fn]} {
#
# Perform an internal redirect to the .adp file and stop the filter chain
#
#ns_log notice "===== core_docs_html_redirector <$args> url <[ad_conn url]> <[ad_conn file]> ADP exists -> break"
rp_internal_redirect -absolute_path $adp_fn
#
# do NOT run any more post-authorization filters and do NOT
# run the function registered, but run the trace to get the
# entry logged in access.log
#
return filter_return
} else {
#
# Continue with business as usual
#
return filter_ok
}
}
# Local variables:
# mode: tcl
# tcl-indent-level: 4
......
<property name="context">{/doc/acs-core-docs {Documentation}} {Part II. Administrator's
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Part II. Administrator&#39;s
Guide}</property>
<property name="doc(title)">Part II. Administrator's
<property name="doc(title)">Part II. Administrator&#39;s
Guide</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -10,9 +10,9 @@ Guide</property>
rightLink="install-overview" rightLabel="Next">
<div class="part">
<div class="titlepage"><div><div><h1 class="title">
<a name="acs-admin" id="acs-admin"></a>Part II. Administrator's
<a name="acs-admin" id="acs-admin"></a>Part II. Administrator&#39;s
Guide</h1></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="chapter"><a href="install-overview">2.
Installation Overview</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="install-steps">Basic
......@@ -24,8 +24,8 @@ Unix-like system and supporting software</a></span></dt><dt><span class="sect1">
8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres">Install
PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4">Install AOLserver
4</a></span></dt><dt><span class="sect1"><a href="openacs">Install OpenACS
5.7.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
5.9.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
Installation Guide for Mac OS X</a></span></dt>
</dl></dd><dt><span class="chapter"><a href="configuring-new-site">4.
Configuring a new OpenACS Site</a></span></dt><dd><dl>
......
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {OpenACS Core Documentation}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {OpenACS Core Documentation}</property>
<property name="doc(title)">OpenACS Core Documentation</property>
<master>
<include src="navheader"
leftLink="requirements-template" leftLabel="Prev"
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="" leftLabel=""
title=""
rightLink="for-everyone" rightLabel="Next">
<div class="book">
<div class="titlepage">
<div><div><h1 class="title">
<a name="idp140717547632592" id="idp140717547632592"></a>OpenACS Core Documentation</h1></div></div><hr>
<a name="idp140198977745328" id="idp140198977745328"></a>OpenACS Core Documentation</h1></div></div><hr>
</div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="part"><a href="for-everyone">I. OpenACS For
Everyone</a></span></dt><dd><dl>
<dt><span class="chapter"><a href="general-documents">1. High
......@@ -19,8 +19,8 @@ level information: What is OpenACS?</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="openacs-overview">Overview</a></span></dt><dt><span class="sect1"><a href="release-notes">OpenACS
Release Notes</a></span></dt>
</dl></dd>
</dl></dd><dt><span class="part"><a href="acs-admin">II. Administrator's
Guide</a></span></dt><dd><dl>
</dl></dd><dt><span class="part"><a href="acs-admin">II.
Administrator&#39;s Guide</a></span></dt><dd><dl>
<dt><span class="chapter"><a href="install-overview">2.
Installation Overview</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="install-steps">Basic
......@@ -32,8 +32,8 @@ Unix-like system and supporting software</a></span></dt><dt><span class="sect1">
8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres">Install
PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4">Install AOLserver
4</a></span></dt><dt><span class="sect1"><a href="openacs">Install OpenACS
5.7.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
5.9.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
Installation Guide for Mac OS X</a></span></dt>
</dl></dd><dt><span class="chapter"><a href="configuring-new-site">4.
Configuring a new OpenACS Site</a></span></dt><dd><dl>
......@@ -45,8 +45,8 @@ an OpenACS package</a></span></dt><dt><span class="sect1"><a href="how-do-I">How
I?</a></span></dt>
</dl></dd><dt><span class="chapter"><a href="upgrade">5.
Upgrading</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="upgrade-overview">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6.html">Upgrading
4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5.html">Upgrading
<dt><span class="sect1"><a href="upgrade-overview">Overview</a></span></dt><dt><span class="sect1"><a href="upgrade-4.5-to-4.6">Upgrading
4.5 or higher to 4.6.3</a></span></dt><dt><span class="sect1"><a href="upgrade-4.6.3-to-5">Upgrading
OpenACS 4.6.3 to 5.0</a></span></dt><dt><span class="sect1"><a href="upgrade-5-0-dot">Upgrading an
OpenACS 5.0.0 or greater installation</a></span></dt><dt><span class="sect1"><a href="upgrade-openacs-files">Upgrading the OpenACS
files</a></span></dt><dt><span class="sect1"><a href="upgrade-supporting">Upgrading
......@@ -111,7 +111,8 @@ Tutorial</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="tutorial-newpackage">Creating
an Application Package</a></span></dt><dt><span class="sect1"><a href="tutorial-database">Setting Up
Database Objects</a></span></dt><dt><span class="sect1"><a href="tutorial-pages">Creating Web
Pages</a></span></dt>
Pages</a></span></dt><dt><span class="sect1"><a href="tutorial-debug">Debugging and
Automated Testing</a></span></dt>
</dl></dd><dt><span class="chapter"><a href="tutorial-advanced">10.
Advanced Topics</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="tutorial-specs">Write the
......@@ -143,7 +144,8 @@ Application Pages</a></span></dt><dt><span class="sect1"><a href="parties">Parti
OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained">OpenACS Permissions
Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity">Object
Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver">Programming with
AOLserver</a></span></dt>
AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder">Using Form
Builder: building html forms dynamically</a></span></dt>
</dl></dd><dt><span class="chapter"><a href="eng-standards">12.
Engineering Standards</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="style-guide">OpenACS Style
......@@ -168,7 +170,7 @@ Internationalization</a></span></dt><dd><dl>
Overview</a></span></dt><dt><span class="sect1"><a href="i18n-introduction">How
Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert">How to
Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design">Design
Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators">Translator's Guide</a></span></dt>
Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators">Translator&#39;s Guide</a></span></dt>
</dl></dd><dt><span class="appendix"><a href="cvs-tips">D. Using CVS
with an OpenACS Site</a></span></dt>
</dl></dd><dt><span class="part"><a href="acs-plat-dev">IV. For OpenACS
......@@ -203,7 +205,7 @@ Update the translations</a></span></dt>
</dl></dd><dt><span class="index"><a href="ix01">Index</a></span></dt>
</dl>
</div><div class="list-of-figures">
<p><b>List of Figures</b></p><dl>
<p><strong>List of Figures</strong></p><dl>
<dt>4.1. <a href="how-do-I">Site
Templates</a>
</dt><dt>4.2. <a href="how-do-I">Granting
......@@ -251,7 +253,7 @@ layout diagram</a>
</dt>
</dl>
</div><div class="list-of-tables">
<p><b>List of Tables</b></p><dl>
<p><strong>List of Tables</strong></p><dl>
<dt>2.1. <a href="install-steps">Default
directories for a standard install</a>
</dt><dt>2.2. <a href="individual-programs">Version
......@@ -273,16 +275,15 @@ Localization Overview</a>
</dt>
</dl>
</div><div class="list-of-examples">
<p><b>List of Examples</b></p><dl><dt>12.1. <a href="variables">Getting
<p><strong>List of Examples</strong></p><dl><dt>12.1. <a href="variables">Getting
datetime from the database ANSI-style</a>
</dt></dl>
</div>
</div>
<include src="navfooter"
leftLink="requirements-template" leftLabel="Prev" leftTitle=""
<include src="/packages/acs-core-docs/lib/navfooter"
leftLink="" leftLabel="" leftTitle=""
rightLink="for-everyone" rightLabel="Next" rightTitle="
Part I. OpenACS For Everyone"
homeLink="index" homeLabel="Home"
upLink="acs-package-dev" upLabel="Up">
<center><a href="http://openacs.org/doc/current/index.html#comments">View comments
on this page at openacs.org</a></center>
homeLink="" homeLabel=""
upLink="" upLabel="">
\ No newline at end of file
<property name="context">{/doc/acs-core-docs {Documentation}} {Part III. For OpenACS Package
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Part III. For OpenACS Package
Developers}</property>
<property name="doc(title)">Part III. For OpenACS Package
Developers</property>
......@@ -14,7 +14,7 @@ Developers</property>
Package Developers</h1></div></div></div><div class="partintro">
<p>Tutorials and reference material for creating new OpenACS
packages.</p><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="chapter"><a href="tutorial">9. Development
Tutorial</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="tutorial-newpackage">Creating
......@@ -79,7 +79,7 @@ Internationalization</a></span></dt><dd><dl>
Overview</a></span></dt><dt><span class="sect1"><a href="i18n-introduction">How
Internationalization/Localization works in OpenACS</a></span></dt><dt><span class="sect1"><a href="i18n-convert">How to
Internationalize a Package</a></span></dt><dt><span class="sect1"><a href="i18n-design">Design
Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators">Translator's Guide</a></span></dt>
Notes</a></span></dt><dt><span class="sect1"><a href="i18n-translators">Translator&#39;s Guide</a></span></dt>
</dl></dd><dt><span class="appendix"><a href="cvs-tips">D. Using CVS
with an OpenACS Site</a></span></dt>
</dl>
......
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {Part IV. For OpenACS Platform
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Part IV. For OpenACS Platform
Developers}</property>
<property name="doc(title)">Part IV. For OpenACS Platform
Developers</property>
......@@ -12,7 +12,7 @@ Developers</property>
<div class="titlepage"><div><div><h1 class="title">
<a name="acs-plat-dev" id="acs-plat-dev"></a>Part IV. For OpenACS
Platform Developers</h1></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="chapter"><a href="kernel-doc">15. Kernel
Documentation</a></span></dt><dd><dl>
<dt><span class="sect1"><a href="kernel-overview">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements">Object Model
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Part IV. For OpenACS Platform Developers</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="cvs-tips.html" title="Appendix D. Using CVS with an OpenACS Site"><link rel="next" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr></table><hr></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a name="acs-plat-dev"></a>Part IV. For OpenACS Platform Developers</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="kernel-doc.html">15. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">16. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr><tr><td width="40%" align="left">Appendix D. Using CVS with an OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter 15. Kernel Documentation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/acs-plat-dev.html#comments">View comments on this page at openacs.org</a></center></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Part IV. For OpenACS Platform Developers</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="index.html" title="OpenACS Core Documentation"><link rel="previous" href="cvs-tips.html" title="Appendix D. Using CVS with an OpenACS Site"><link rel="next" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><th width="60%" align="center"></th><td width="20%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr></table><hr></div><div class="part"><div class="titlepage"><div><div><h1 class="title"><a name="acs-plat-dev"></a>Part IV. For OpenACS Platform Developers</h1></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="chapter"><a href="kernel-doc.html">15. Kernel Documentation</a></span></dt><dd><dl><dt><span class="sect1"><a href="kernel-overview.html">Overview</a></span></dt><dt><span class="sect1"><a href="object-system-requirements.html">Object Model Requirements</a></span></dt><dt><span class="sect1"><a href="object-system-design.html">Object Model Design</a></span></dt><dt><span class="sect1"><a href="permissions-requirements.html">Permissions Requirements</a></span></dt><dt><span class="sect1"><a href="permissions-design.html">Permissions Design</a></span></dt><dt><span class="sect1"><a href="groups-requirements.html">Groups Requirements</a></span></dt><dt><span class="sect1"><a href="groups-design.html">Groups Design</a></span></dt><dt><span class="sect1"><a href="subsites-requirements.html">Subsites Requirements</a></span></dt><dt><span class="sect1"><a href="subsites-design.html">Subsites Design Document</a></span></dt><dt><span class="sect1"><a href="apm-requirements.html">Package Manager Requirements</a></span></dt><dt><span class="sect1"><a href="apm-design.html">Package Manager Design</a></span></dt><dt><span class="sect1"><a href="db-api-detailed.html">Database Access API</a></span></dt><dt><span class="sect1"><a href="i18n-requirements.html">OpenACS Internationalization Requirements</a></span></dt><dt><span class="sect1"><a href="security-requirements.html">Security Requirements</a></span></dt><dt><span class="sect1"><a href="security-design.html">Security Design</a></span></dt><dt><span class="sect1"><a href="security-notes.html">Security Notes</a></span></dt><dt><span class="sect1"><a href="rp-requirements.html">Request Processor Requirements</a></span></dt><dt><span class="sect1"><a href="rp-design.html">Request Processor Design</a></span></dt><dt><span class="sect1"><a href="tcl-doc.html">Documenting Tcl Files: Page Contracts and Libraries</a></span></dt><dt><span class="sect1"><a href="bootstrap-acs.html">Bootstrapping OpenACS</a></span></dt><dt><span class="sect1"><a href="ext-auth-requirements.html">External Authentication Requirements</a></span></dt></dl></dd><dt><span class="chapter"><a href="releasing-openacs.html">16. Releasing OpenACS</a></span></dt><dd><dl><dt><span class="section"><a href="releasing-openacs-core.html">OpenACS Core and .LRN</a></span></dt><dt><span class="section"><a href="update-repository.html">How to Update the OpenACS.org repository</a></span></dt><dt><span class="section"><a href="releasing-package.html">How to package and release an OpenACS Package</a></span></dt><dt><span class="section"><a href="update-translations.html">How to Update the translations</a></span></dt></dl></dd></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="cvs-tips.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="kernel-doc.html">Next</a></td></tr><tr><td width="40%" align="left">Appendix D. Using CVS with an OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="index.html">Up</a></td><td width="40%" align="right"> Chapter 15. Kernel Documentation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Install Analog web file analyzer}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Install Analog web file analyzer}</property>
<property name="doc(title)">Install Analog web file analyzer</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Install Analog web file analyzer</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix B. Install additional supporting software"><link rel="previous" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="next" href="install-nspam.html" title="Install nspam"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><th width="60%" align="center">Appendix B. Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-install"></a>Install Analog web file analyzer</h2></div></div></div><p>Download the Analog <a class="link" href="individual-programs.html#analog-download" title="Analog 5.32 or newer, OPTIONAL">source tarball</a> in
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Install Analog web file analyzer</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix B. Install additional supporting software"><link rel="previous" href="install-qmail.html" title="Install qmail (OPTIONAL)"><link rel="next" href="install-nspam.html" title="Install nspam"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><th width="60%" align="center">Appendix B. Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-install"></a>Install Analog web file analyzer</h2></div></div></div><p>Download the Analog <a class="link" href="individual-programs.html#analog-download" title="Analog 5.32 or newer, OPTIONAL">source tarball</a> in
<code class="computeroutput">/tmp</code>. Unpack, compile, and install analog.</p><pre class="screen">[root aolserver]# <strong class="userinput"><code>cd /usr/local/src</code></strong>
[root src]# <strong class="userinput"><code>tar xzf /tmp/analog-5.32.tar.gz</code></strong>
[root src]# <strong class="userinput"><code>cd analog-5.32</code></strong>
......@@ -18,4 +18,4 @@ tar xzf /tmp/analog-5.32.tar.gz
cd analog-5.32
make
cd ..
mv analog-5.32 /usr/share/</span></span></pre><p>See also <a class="xref" href="analog-setup.html" title="Set up Log Analysis Reports">the section called “Set up Log Analysis Reports”</a></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr><tr><td width="40%" align="left">Install qmail (OPTIONAL) </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install nspam</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/analog-install.html#comments">View comments on this page at openacs.org</a></center></body></html>
mv analog-5.32 /usr/share/</span></span></pre><p>See also <a class="xref" href="analog-setup.html" title="Set up Log Analysis Reports">the section called “Set up Log Analysis Reports”</a></p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-qmail.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-nspam.html">Next</a></td></tr><tr><td width="40%" align="left">Install qmail (OPTIONAL) </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Install nspam</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Set up Log Analysis Reports}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Set up Log Analysis Reports}</property>
<property name="doc(title)">Set up Log Analysis Reports</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -27,12 +27,12 @@ mkdir www/log
cp -r /usr/share/analog-5.32/images www/log/</span></span>
</pre><p>Edit <code class="computeroutput">/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/analog.cfg</code>
and change the variable in <code class="computeroutput">HOSTNAME
"[my organisation]"</code> to reflect your website title. If you
don't want the traffic log to be publicly visible, change
<code class="computeroutput">OUTFILE
"[my organisation]"</code> to reflect your website title.
If you don&#39;t want the traffic log to be publicly visible,
change <code class="computeroutput">OUTFILE
/var/lib/aolserver/$OPENACS_SERVICE_NAME/www/log/traffic.html</code>
to use a private directory. You'll also need to edit all instances
of service0 to your $OPENACS_SERVICE_NAME.</p>
to use a private directory. You&#39;ll also need to edit all
instances of service0 to your $OPENACS_SERVICE_NAME.</p>
</li><li class="listitem">
<p>Run it.</p><pre class="screen">
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>/usr/share/analog-5.32/analog -G -g/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/analog.cfg</code></strong>
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Set up Log Analysis Reports</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter 6. Production Environments"><link rel="previous" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="next" href="uptime.html" title="External uptime validation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><th width="60%" align="center">Chapter 6. Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-setup"></a>Set up Log Analysis Reports</h2></div></div></div><p>Analog is a program with processes webserver access logs,
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Set up Log Analysis Reports</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="maintenance-web.html" title="Chapter 6. Production Environments"><link rel="previous" href="install-ssl.html" title="Installing SSL Support for an OpenACS service"><link rel="next" href="uptime.html" title="External uptime validation"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><th width="60%" align="center">Chapter 6. Production Environments</th><td width="20%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="analog-setup"></a>Set up Log Analysis Reports</h2></div></div></div><p>Analog is a program with processes webserver access logs,
performs DNS lookup, and outputs HTML reports. Analog should
<a class="link" href="analog-install.html" title="Install Analog web file analyzer">already be
installed.</a> A modified configuration file is included in
......@@ -29,4 +29,4 @@ logout
[root root]# <strong class="userinput"><code>emacs /etc/cron.daily/analog</code></strong></pre><p>Put this into the file:</p><pre class="programlisting">#!/bin/sh
/usr/share/analog-5.32/analog -G -g/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/analog.cfg</pre><pre class="screen">[root root]# <strong class="userinput"><code>chmod 755 /etc/cron.daily/analog</code></strong></pre><p>Test it by running the script.</p><pre class="screen">[root root]# <strong class="userinput"><code>sh /etc/cron.daily/analog</code></strong></pre><p>Browse to <code class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/log/traffic.html</code></p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr><tr><td width="40%" align="left">Installing SSL Support for an OpenACS service </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> External uptime validation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/analog-setup.html#comments">View comments on this page at openacs.org</a></center></body></html>
/usr/share/analog-5.32/analog -G -g/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/analog.cfg</pre><pre class="screen">[root root]# <strong class="userinput"><code>chmod 755 /etc/cron.daily/analog</code></strong></pre><p>Test it by running the script.</p><pre class="screen">[root root]# <strong class="userinput"><code>sh /etc/cron.daily/analog</code></strong></pre><p>Browse to <code class="computeroutput">http://<span class="replaceable"><span class="replaceable">yourserver.test</span></span>/log/traffic.html</code></p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ssl.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="uptime.html">Next</a></td></tr><tr><td width="40%" align="left">Installing SSL Support for an OpenACS service </td><td width="20%" align="center"><a accesskey="u" href="maintenance-web.html">Up</a></td><td width="40%" align="right"> External uptime validation</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Install AOLserver 3.3oacs1</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix B. Install additional supporting software"><link rel="previous" href="install-ldap-radius.html" title="Install LDAP for use as external authentication"><link rel="next" href="credits.html" title="Appendix C. Credits"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ldap-radius.html">Prev</a> </td><th width="60%" align="center">Appendix B. Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver"></a>Install AOLserver 3.3oacs1</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Install AOLserver 3.3oacs1</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="install-more-software.html" title="Appendix B. Install additional supporting software"><link rel="previous" href="install-ldap-radius.html" title="Install LDAP for use as external authentication"><link rel="next" href="credits.html" title="Appendix C. Credits"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-ldap-radius.html">Prev</a> </td><th width="60%" align="center">Appendix B. Install additional supporting software</th><td width="20%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="aolserver"></a>Install AOLserver 3.3oacs1</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><p>We recommend the use of <a class="link" href="aolserver4.html" title="Install AOLserver 4">AOLserver 4.0.1</a> or later. These instructions are retained as a resource.</p><p>
......@@ -58,7 +58,7 @@ cd /usr/local/src/aolserver
and <code class="computeroutput">ln -s /usr/lib/postgresql /usr/local/pgsql</code>)</p><pre class="screen">[root aolserver]# <strong class="userinput"><code>export POSTGRES=/usr/local/pgsql; ./conf</code></strong>
Building in /usr/local/aolserver
with the following modules:
aolserver
AOLserver
nscache
nsrewrite
nssha1
......@@ -83,17 +83,17 @@ Done Building Sat Mar 8 10:31:35 PST 2003
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.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Oracle</p><pre class="screen">[root aolserver]# <strong class="userinput"><code>cd /usr/local/aolserver/bin</code></strong>
[root bin]# <strong class="userinput"><code>cp /var/tmp/openacs-5.7.0/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle</code></strong>
[root bin]# <strong class="userinput"><code>cp /var/tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle</code></strong>
[root bin]# <strong class="userinput"><code>chmod 750 nsd-oracle</code></strong>
[root bin]#
<span class="action"><span class="action">cd /usr/local/aolserver/bin
cp /var/tmp/openacs-5.7.0/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
cp /var/tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-oracle.txt ./nsd-oracle
chmod 750 nsd-oracle</span></span></pre></li><li class="listitem"><p>PostgreSQL</p><pre class="screen">[root aolserver]# <strong class="userinput"><code>cd /usr/local/aolserver/bin</code></strong>
[root bin]# <strong class="userinput"><code>cp /var/tmp/openacs-5.7.0/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres</code></strong>
[root bin]# <strong class="userinput"><code>cp /var/tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres</code></strong>
[root bin]# <strong class="userinput"><code>chmod 755 nsd-postgres</code></strong>
[root bin]#
<span class="action"><span class="action">cd /usr/local/aolserver/bin
cp /var/tmp/openacs-5.7.0/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
cp /var/tmp/openacs-5.9.0/packages/acs-core-docs/www/files/nsd-postgres.txt ./nsd-postgres
chmod 755 nsd-postgres</span></span></pre></li></ul></div></li><li class="listitem"><a name="install-tdom"></a><p><b>Install tDOM. </b>Download the <a class="link" href="individual-programs.html#source-tdom">tDOM
tarball</a>, unpack it, adjust the configuration file to match our patched
distribution of aolserver, and compile it.</p><pre class="screen">[root root]# <strong class="userinput"><code>cd /usr/local/src</code></strong>
......@@ -241,4 +241,4 @@ set address [ns_info address]</pre><p>
set hostname [ns_info hostname]
#set address [ns_info address]
set address 0.0.0.0</pre></li><li class="listitem"><p><a class="link" href="analog-install.html" title="Install Analog web file analyzer">Install
Analog</a> web file analyzer. (OPTIONAL)</p></li></ol></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ldap-radius.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr><tr><td width="40%" align="left">Install LDAP for use as external authentication </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Appendix C. Credits</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/aolserver.html#comments">View comments on this page at openacs.org</a></center></body></html>
Analog</a> web file analyzer. (OPTIONAL)</p></li></ol></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-ldap-radius.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="credits.html">Next</a></td></tr><tr><td width="40%" align="left">Install LDAP for use as external authentication </td><td width="20%" align="center"><a accesskey="u" href="install-more-software.html">Up</a></td><td width="40%" align="right"> Appendix C. Credits</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Package Manager Requirements</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="subsites-design.html" title="Subsites Design Document"><link rel="next" href="apm-design.html" title="Package Manager Design"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-requirements"></a>Package Manager Requirements</h2></div></div></div><div class="authorblurb"><p>By Bryan Quinn and Todd Nightingale</p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Package Manager Requirements</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="subsites-design.html" title="Subsites Design Document"><link rel="next" href="apm-design.html" title="Package Manager Design"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="apm-requirements"></a>Package Manager Requirements</h2></div></div></div><div class="authorblurb"><p>By Bryan Quinn and Todd Nightingale</p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-intro"></a>Introduction</h3></div></div></div><p>The following is a requirements document for the OpenACS Package Manager
......@@ -95,7 +95,7 @@ in Sally's sub-site.</p><p><span class="strong"><strong>Procedural API</strong><
different actions depending on what version of another package is installed.
She uses the APM procedural API to check if KM version 1.0 is installed or
version 1.1. Based on the results of this procedural call, the software
exhibits different behavior.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-links"></a>Related Links</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="ulink" href="/doc/core-arch-guide/apm" target="_top">APM 3.3 Design document</a></p></li><li class="listitem"><p><a class="ulink" href="/doc/packaging" target="_top">Five minute guide to packaging a module</a></p></li><li class="listitem"><p><a class="ulink" href="/doc/core-arch-guide/subcommunities" target="_top">Sub-communities</a></p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-data-model"></a>Requirements: Data Model</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="strong"><strong>4.500.0 Package Identification</strong></span>
exhibits different behavior.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-links"></a>Related Links</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><a class="ulink" href="apm-design" target="_top">APM 3.3 Design document</a></p></li><li class="listitem"><p><a class="ulink" href="packages" target="_top">Five minute guide to packaging a module</a></p></li><li class="listitem"><p><a class="ulink" href="subsites-requirements" target="_top">Sub-sites</a></p></li></ul></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-data-model"></a>Requirements: Data Model</h3></div></div></div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><span class="strong"><strong>4.500.0 Package Identification</strong></span>
(All of these items are entered by the developer using the developer UI.) </p><p><span class="strong"><strong>4.500.1</strong></span> A human readable package key that is guaranteed
to be unique to the local OpenACS site must be maintained by the APM. For
example, "apm."</p><p><span class="strong"><strong>4.500.5</strong></span> A package id (primary key) that is guaranteed to
......@@ -292,4 +292,4 @@ for that acs_object_type.</p><p>When a package instance is created, it is an acs
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.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-rev-history"></a>Revision History</h3></div></div></div><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col><col><col></colgroup><tbody><tr><td><span class="strong"><strong>Document Revision #</strong></span></td><td><span class="strong"><strong>Action Taken, Notes</strong></span></td><td><span class="strong"><strong>When?</strong></span></td><td><span class="strong"><strong>By Whom?</strong></span></td></tr><tr><td>0.1</td><td>Creation</td><td>8/10/2000</td><td>Bryan Quinn, Todd Nightingale</td></tr><tr><td> </td><td>Reviewed</td><td>8/11/2000</td><td>John Prevost, Mark Thomas, and Pete Su</td></tr><tr><td>0.2</td><td>Revised and updated</td><td>8/12/2000</td><td>Bryan Quinn</td></tr><tr><td>0.3</td><td>Reviewed, revised, and updated - conforms to requirements template.</td><td>8/18/2000</td><td>Kai Wu</td></tr><tr><td>0.4</td><td>Minor edits before ACS 4 Beta.</td><td>9/30/2000</td><td>Kai Wu</td></tr></tbody></table></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr><tr><td width="40%" align="left">Subsites Design Document </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> Package Manager Design</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/apm-requirements.html#comments">View comments on this page at openacs.org</a></center></body></html>
these features should be quite straightforward.</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="apm-requirements-rev-history"></a>Revision History</h3></div></div></div><div class="informaltable"><table class="informaltable" cellspacing="0" border="1"><colgroup><col><col><col><col></colgroup><tbody><tr><td><span class="strong"><strong>Document Revision #</strong></span></td><td><span class="strong"><strong>Action Taken, Notes</strong></span></td><td><span class="strong"><strong>When?</strong></span></td><td><span class="strong"><strong>By Whom?</strong></span></td></tr><tr><td>0.1</td><td>Creation</td><td>8/10/2000</td><td>Bryan Quinn, Todd Nightingale</td></tr><tr><td> </td><td>Reviewed</td><td>8/11/2000</td><td>John Prevost, Mark Thomas, and Pete Su</td></tr><tr><td>0.2</td><td>Revised and updated</td><td>8/12/2000</td><td>Bryan Quinn</td></tr><tr><td>0.3</td><td>Reviewed, revised, and updated - conforms to requirements template.</td><td>8/18/2000</td><td>Kai Wu</td></tr><tr><td>0.4</td><td>Minor edits before ACS 4 Beta.</td><td>9/30/2000</td><td>Kai Wu</td></tr></tbody></table></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="subsites-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="apm-design.html">Next</a></td></tr><tr><td width="40%" align="left">Subsites Design Document </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> Package Manager Design</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Automated Backup}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Automated Backup}</property>
<property name="doc(title)">Automated Backup</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -23,10 +23,9 @@ with your specific parameters.</p></li><li class="listitem">
chmod +x backup.sh
</pre>
</li><li class="listitem">
<p>Set this file to run automatically by adding a line to root's
crontab. (Typically, with <code class="computeroutput">export
EDITOR=emacs; crontab -e</code>.) This example runs the backup
script at 1:30 am every day.</p><pre class="programlisting">
<p>Set this file to run automatically by adding a line to
root&#39;s crontab. (Typically, with <code class="computeroutput">export EDITOR=emacs; crontab -e</code>.) This
example runs the backup script at 1:30 am every day.</p><pre class="programlisting">
30 1 * * * sh /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh
</pre>
</li>
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Automated Backup</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter 8. Backup and Recovery"><link rel="previous" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="next" href="backups-with-cvs.html" title="Using CVS for backup-recovery"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><th width="60%" align="center">Chapter 8. Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-backup"></a>Automated Backup</h2></div></div></div><p>The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup</code> and then backs up all of <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code> to a single zip file, and then copies that zip file to another computer.</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Make sure that the manual backup process described above works.</p></li><li class="listitem"><p>Customize the default backup script. Edit <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</code> with your specific parameters.</p></li><li class="listitem"><p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Automated Backup</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter 8. Backup and Recovery"><link rel="previous" href="snapshot-backup.html" title="Manual backup and recovery"><link rel="next" href="backups-with-cvs.html" title="Using CVS for backup-recovery"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><th width="60%" align="center">Chapter 8. Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-backup"></a>Automated Backup</h2></div></div></div><p>The recommended backup strategy for a production sit is to use an automated script which first backs up the database to a file in <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/database-backup</code> and then backs up all of <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code> to a single zip file, and then copies that zip file to another computer.</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Make sure that the manual backup process described above works.</p></li><li class="listitem"><p>Customize the default backup script. Edit <code class="filename">/var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</code> with your specific parameters.</p></li><li class="listitem"><p>
Make sure the file is executable:</p><pre class="programlisting">chmod +x backup.sh</pre></li><li class="listitem"><p>
Set this file to run automatically by adding a line to root's crontab. (Typically, with <code class="computeroutput">export EDITOR=emacs; crontab -e</code>.) This example runs the backup script at 1:30 am every day.</p><pre class="programlisting">30 1 * * * sh /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</pre></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr><tr><td width="40%" align="left">Manual backup and recovery </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Using CVS for backup-recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/automated-backup.html#comments">View comments on this page at openacs.org</a></center></body></html>
Set this file to run automatically by adding a line to root's crontab. (Typically, with <code class="computeroutput">export EDITOR=emacs; crontab -e</code>.) This example runs the backup script at 1:30 am every day.</p><pre class="programlisting">30 1 * * * sh /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/etc/backup.sh</pre></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="snapshot-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="backups-with-cvs.html">Next</a></td></tr><tr><td width="40%" align="left">Manual backup and recovery </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Using CVS for backup-recovery</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Automated Testing}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Automated Testing}</property>
<property name="doc(title)">Automated Testing</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -15,40 +15,44 @@ Chapter 12. Engineering Standards"
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><p>Best practices in writing OpenACS automated tests</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc;">
<li class="listitem"><p>
<b>Special characters in Tcl. </b> Try strings
starting with a <code class="computeroutput">-Bad</code> and
strings containing <code class="computeroutput">[BAD]</code>,
<strong>Special characters in Tcl. </strong> Try
strings starting with a <code class="computeroutput">-Bad</code>
and strings containing <code class="computeroutput">[BAD]</code>,
<code class="computeroutput">{</code>, <code class="computeroutput">\077</code>, and <code class="computeroutput">$Bad</code>. For user input, <code class="computeroutput">[BAD]</code> should never be evaluated,
<code class="computeroutput">\077</code> should not be turned into
a <code class="computeroutput">?</code> and <code class="computeroutput">$Bad</code> should not be interpolated. The string
<code class="computeroutput">-Bad [BAD] \077 { $Bad</code> should
be valid user input, should pass through the system unaltered, and
if it isn't that's a bug.</p></li><li class="listitem"><p>
<b>Quoting issues. </b>Put some html in plain text
fields and make sure the result is properly quoted anywhere it
shows up (I use "&lt;b&gt;bold&lt;/b&gt;" usually). Look out
especially for quoting errors in the context bar and in round trips
via an edit form. For fields that disallow html tags you can use
<code class="computeroutput">&amp;amp;</code> to check that the
field is quoted properly. If it is not displayed as <code class="computeroutput">&amp;amp;</code> then the quoting for the field is
incorrect. (It's not clear whether this should be considered an
error but given that data for text fields can come from various
sources if it's text it should be properly quoted and we should not
rely on input validation to prevent XSS security holes.)</p></li><li class="listitem"><p>
<b>Whitespace input. </b>Check that whitespace is
not considered valid input for a field if it does not make sense.
For example, the subject of a forum post is used to construct a
link and if it is " " it will have a link of <code class="computeroutput">&lt;a href="..."&gt; &lt;/a&gt;</code> which would
not be clickable if whitespace was allowed as a valid input.</p></li><li class="listitem"><p>
<b>Doubleclick. </b> Make sure that if you submit a
form, use the back button, and submit again that the behavior is
reasonable (correct behavior depends on what the form is for, but a
server error is not reasonable).</p></li><li class="listitem"><p>
<b>Duplicate names. </b> Make sure that if a
duplicate name is entered that there is a reasonable error rather
if it isn&#39;t that&#39;s a bug.</p></li><li class="listitem"><p>
<strong>Quoting issues. </strong>Put some html in
plain text fields and make sure the result is properly quoted
anywhere it shows up (I use "&lt;b&gt;bold&lt;/b&gt;"
usually). Look out especially for quoting errors in the context bar
and in round trips via an edit form. For fields that disallow html
tags you can use <code class="computeroutput">&amp;amp;</code> to
check that the field is quoted properly. If it is not displayed as
<code class="computeroutput">&amp;amp;</code> then the quoting for
the field is incorrect. (It&#39;s not clear whether this should be
considered an error but given that data for text fields can come
from various sources if it&#39;s text it should be properly quoted
and we should not rely on input validation to prevent XSS security
holes.)</p></li><li class="listitem"><p>
<strong>Whitespace input. </strong>Check that
whitespace is not considered valid input for a field if it does not
make sense. For example, the subject of a forum post is used to
construct a link and if it is " " it will have a link of
<code class="computeroutput">&lt;a href="..."&gt;
&lt;/a&gt;</code> which would not be clickable if whitespace was
allowed as a valid input.</p></li><li class="listitem"><p>
<strong>Doubleclick. </strong> Make sure that if you
submit a form, use the back button, and submit again that the
behavior is reasonable (correct behavior depends on what the form
is for, but a server error is not reasonable).</p></li><li class="listitem"><p>
<strong>Duplicate names. </strong> Make sure that if
a duplicate name is entered that there is a reasonable error rather
than a server error. Check for insert, move, copy, and rename.</p></li>
</ul></div><div class="cvstag">($&zwnj;Id: auto-testing.xml,v 1.3 2006/07/17
05:38:37 torbenb Exp $)</div>
</ul></div><div class="cvstag">($&zwnj;Id: auto-testing.xml,v 1.3.14.1 2016/06/23
08:32:46 gustafn Exp $)</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
leftLink="variables" leftLabel="Prev" leftTitle="Variables"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Automated Testing</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter 12. Engineering Standards"><link rel="previous" href="variables.html" title="Variables"><link rel="next" href="doc-standards.html" title="Chapter 13. Documentation Standards"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><th width="60%" align="center">Chapter 12. Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-testing-best-practices"></a>Automated Testing</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:davis@xarg.net" target="_top">Jeff Davis</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Automated Testing</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter 12. Engineering Standards"><link rel="previous" href="variables.html" title="Variables"><link rel="next" href="doc-standards.html" title="Chapter 13. Documentation Standards"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><th width="60%" align="center">Chapter 12. Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated-testing-best-practices"></a>Automated Testing</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:davis@xarg.net" target="_top">Jeff Davis</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><p>Best practices in writing OpenACS automated tests</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p><b>Special characters in Tcl. </b>
......@@ -25,4 +25,4 @@ what the form is for, but a server error is not reasonable).
Make sure that if a duplicate name is entered that there is a
reasonable error rather than a server error. Check for
insert, move, copy, and rename.
</p></li></ul></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr><tr><td width="40%" align="left">Variables </td><td width="20%" align="center"><a accesskey="u" href="eng-standards.html">Up</a></td><td width="40%" align="right"> Chapter 13. Documentation Standards</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/automated-testing-best-practices.html#comments">View comments on this page at openacs.org</a></center></body></html>
</p></li></ul></div><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="variables.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="doc-standards.html">Next</a></td></tr><tr><td width="40%" align="left">Variables </td><td width="20%" align="center"><a accesskey="u" href="eng-standards.html">Up</a></td><td width="40%" align="right"> Chapter 13. Documentation Standards</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 8. Backup and
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 8. Backup and
Recovery}</property>
<property name="doc(title)">Chapter 8. Backup and
Recovery</property>
......@@ -7,13 +7,13 @@ Recovery</property>
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="install-next-nightly-vacuum" leftLabel="Prev"
title="
Part II. Administrator's Guide"
Part II. Administrator&#39;s Guide"
rightLink="install-next-backups" rightLabel="Next">
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="backup-recovery" id="backup-recovery"></a>Chapter 8. Backup and
Recovery</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="install-next-backups">Backup
Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup">Manual
backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup">Automated
......@@ -21,8 +21,8 @@ Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs">Using C
for backup-recovery</a></span></dt>
</dl>
</div><div class="authorblurb">
<div class="cvstag">($&zwnj;Id: recovery.xml,v 1.17 2010/12/11 23:36:32
ryang Exp $)</div><p>By <a class="ulink" href="mailto:dhogaza\@pacifier.com" target="_top">Don Baccus</a> with additions by <a class="ulink" href="mailto:joel\@aufrecht.org" target="_top">Joel Aufrecht</a>
<div class="cvstag">($&zwnj;Id: recovery.xml,v 1.17.6.3 2017/04/21
15:07:53 gustafn Exp $)</div><p>By <a class="ulink" href="mailto:dhogaza\@pacifier.com" target="_top">Don Baccus</a> with additions by <a class="ulink" href="mailto:joel\@aufrecht.org" target="_top">Joel Aufrecht</a>
</p><p>We will cover some basic backup and recovery strategies. These
are intended to be robust but simple enough to set up. For a large
scale production site you would probably need to create your own
......@@ -30,8 +30,8 @@ backup strategies (in particular full dumps from oracle, while easy
to set up, are far from the best solution).</p><p>There are three basic things which need to be backed up, the
database data, the server source tree, and the
acs-content-repository (which is in the server source tree).</p><div class="figure">
<a name="idp140400238889792" id="idp140400238889792"></a><p class="title"><b>Figure 8.1. Backup and
Recovery Strategy</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div>
<a name="idp140592101131768" id="idp140592101131768"></a><p class="title"><strong>Figure 8.1. Backup
and Recovery Strategy</strong></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div>
</div><p><br class="figure-break"></p>
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div>
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 8. Backup and Recovery</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="next" href="install-next-backups.html" title="Backup Strategy"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="backup-recovery"></a>Chapter 8. Backup and Recovery</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></div><div class="authorblurb"><div class="cvstag">($Id$)</div><p>By <a class="ulink" href="mailto:dhogaza@pacifier.com" target="_top">Don Baccus</a> with additions
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 8. Backup and Recovery</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="install-next-nightly-vacuum.html" title="Vacuum Postgres nightly"><link rel="next" href="install-next-backups.html" title="Backup Strategy"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="backup-recovery"></a>Chapter 8. Backup and Recovery</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="install-next-backups.html">Backup Strategy</a></span></dt><dt><span class="sect1"><a href="snapshot-backup.html">Manual backup and recovery</a></span></dt><dt><span class="sect1"><a href="automated-backup.html">Automated Backup</a></span></dt><dt><span class="sect1"><a href="backups-with-cvs.html">Using CVS for backup-recovery</a></span></dt></dl></div><div class="authorblurb"><div class="cvstag">($Id$)</div><p>By <a class="ulink" href="mailto:dhogaza@pacifier.com" target="_top">Don Baccus</a> with additions
by <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p><p>We will cover some basic backup and recovery strategies. These are intended to
be robust but simple enough to set up. For a large scale production site you would
probably need to create your own backup strategies (in particular full dumps from
oracle, while easy to set up, are far from the best solution).
</p><p>There are three basic things which need to be backed up, the database data, the server
source tree, and the acs-content-repository (which is in the server source tree).</p><p>
</p><div class="figure"><a name="idp140400238889792"></a><p class="title"><b>Figure 8.1. Backup and Recovery Strategy</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div></div><p><br class="figure-break">
</p><div class="figure"><a name="idp140592101131768"></a><p class="title"><b>Figure 8.1. Backup and Recovery Strategy</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/backup.png" align="middle" alt="Backup and Recovery Strategy"></div></div></div><p><br class="figure-break">
</p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr><tr><td width="40%" align="left">Vacuum Postgres nightly </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Backup Strategy</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/backup-recovery.html#comments">View comments on this page at openacs.org</a></center></body></html>
</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="install-next-nightly-vacuum.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-next-backups.html">Next</a></td></tr><tr><td width="40%" align="left">Vacuum Postgres nightly </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Backup Strategy</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Using CVS for backup-recovery}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Using CVS for backup-recovery}</property>
<property name="doc(title)">Using CVS for backup-recovery</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -11,10 +11,10 @@ Chapter 8. Backup and Recovery"
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="backups-with-cvs" id="backups-with-cvs"></a>Using CVS for backup-recovery</h2></div></div></div><p>CVS-only backup is often appropriate for development sites. If
you are already using CVS and your data is not important, you
probably don't need to do anything to back up your files. Just make
sure that your current work is checked into the system. You can
then roll back based on date - note the current system time, down
to the minute. For maximum safety, you can apply a tag to your
probably don&#39;t need to do anything to back up your files. Just
make sure that your current work is checked into the system. You
can then roll back based on date - note the current system time,
down to the minute. For maximum safety, you can apply a tag to your
current files. You will still need to back up your database.</p><p>Note that, if you did the CVS options in this document, the
<code class="filename">/var/lib/aolserver/$OPENACS_SERVICE_NAME/etc</code>
directory is not included in cvs and you may want to add it.</p><pre class="screen">
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Using CVS for backup-recovery</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter 8. Backup and Recovery"><link rel="previous" href="automated-backup.html" title="Automated Backup"><link rel="next" href="install-redhat.html" title="Appendix A. Install Red Hat 8/9"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><th width="60%" align="center">Chapter 8. Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="backups-with-cvs"></a>Using CVS for backup-recovery</h2></div></div></div><p>CVS-only backup is often appropriate for development sites. If you are already using CVS and your data is not important, you probably don't
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Using CVS for backup-recovery</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="backup-recovery.html" title="Chapter 8. Backup and Recovery"><link rel="previous" href="automated-backup.html" title="Automated Backup"><link rel="next" href="install-redhat.html" title="Appendix A. Install Red Hat 8/9"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><th width="60%" align="center">Chapter 8. Backup and Recovery</th><td width="20%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="backups-with-cvs"></a>Using CVS for backup-recovery</h2></div></div></div><p>CVS-only backup is often appropriate for development sites. If you are already using CVS and your data is not important, you probably don't
need to do anything to back up your files. Just make
sure that your current work is checked into the system.
You can then roll back based on date - note the
......@@ -28,4 +28,4 @@ exit</span></span></pre><p>To restore files from a cvs tag such as the one used
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>exit</code></strong>
<span class="action"><span class="action">su - $OPENACS_SERVICE_NAME
cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cvs up -r current</span></span></pre></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Backup </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Appendix A. Install Red Hat 8/9</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/backups-with-cvs.html#comments">View comments on this page at openacs.org</a></center></body></html>
cvs up -r current</span></span></pre></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-backup.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-redhat.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Backup </td><td width="20%" align="center"><a accesskey="u" href="backup-recovery.html">Up</a></td><td width="40%" align="right"> Appendix A. Install Red Hat 8/9</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Bootstrapping OpenACS}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Bootstrapping OpenACS}</property>
<property name="doc(title)">Bootstrapping OpenACS</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -43,8 +43,8 @@ has always been, the same for all AOLservers, regardless of whether
they are running OpenACS.</p><p>Next AOLserver sources, in lexicographical order, each file in
the <code class="computeroutput">/tcl</code> directory. The first
such file is <code class="computeroutput">0-acs-init.tcl</code>,
which doesn't do much directly except to determine the OpenACS path
root (e.g., <code class="computeroutput">/var/lib/aolserver/</code><span class="emphasis"><em><code class="computeroutput">yourservername</code></em></span>) by trimming the
which doesn&#39;t do much directly except to determine the OpenACS
path root (e.g., <code class="computeroutput">/var/lib/aolserver/</code><span class="emphasis"><em><code class="computeroutput">yourservername</code></em></span>) by trimming the
final component from the path to the Tcl library directory
(<code class="computeroutput">/var/lib/aolserver/</code><span class="emphasis"><em><code class="computeroutput">yourservername</code></em></span><code class="computeroutput">/tcl</code>).
But <code class="computeroutput">0-acs-init.tcl</code>'s has an
......@@ -53,7 +53,7 @@ does the following:</p><div class="orderedlist"><ol class="orderedlist" type="1"
<li class="listitem"><p>
<span class="strong"><strong>Initialize some NSVs used by the
core</strong></span>. These NSVs are documented in <code class="computeroutput">/packages/acs-core/apm-procs.tcl</code> - no need
to worry about them unless you're an OpenACS core hacker.</p></li><li class="listitem"><p>
to worry about them unless you&#39;re an OpenACS core hacker.</p></li><li class="listitem"><p>
<span class="strong"><strong>Verify the deletion of obsolete
OpenACS files</strong></span>. The <code class="computeroutput">/tcl</code> directory has evolved quite a bit over
the months and years, and a few files have come and gone. The
......@@ -70,25 +70,26 @@ lexicographical order. These procedure are needed to perform any of
the following steps.</p></li><li class="listitem"><p>
<span class="strong"><strong>Ensure that the database is
available</strong></span> by grabbing and releasing a handle. If we
can't obtain a handle, we terminate initialization (since OpenACS
couldn't possibly start up the server without access to the
database).</p></li><li class="listitem"><p>
can&#39;t obtain a handle, we terminate initialization (since
OpenACS couldn&#39;t possibly start up the server without access to
the database).</p></li><li class="listitem"><p>
<span class="strong"><strong>Register any new packages in the
<code class="computeroutput">/packages</code>
directory</strong></span>. In each directory inside <code class="computeroutput">/packages</code>, we look for a <code class="computeroutput">.info</code> file; if we find a package that
hasn't yet been registered with the package manager (i.e., it's
been copied there manually), we insert information about it into
the database. (The first time OpenACS starts up, <span class="emphasis"><em>no</em></span> packages will have been registered in
the database yet, so this step will registers every single package
in the <code class="computeroutput">/packages</code> directory.)
Note that packages discovered here are initially disabled; they
must be manually enabled in the package manager before they can be
used.</p></li><li class="listitem"><p>
hasn&#39;t yet been registered with the package manager (i.e.,
it&#39;s been copied there manually), we insert information about
it into the database. (The first time OpenACS starts up,
<span class="emphasis"><em>no</em></span> packages will have been
registered in the database yet, so this step will registers every
single package in the <code class="computeroutput">/packages</code>
directory.) Note that packages discovered here are initially
disabled; they must be manually enabled in the package manager
before they can be used.</p></li><li class="listitem"><p>
<span class="strong"><strong>Ensure that the <code class="computeroutput">acs-kernel</code> package is
enabled</strong></span>. If the OpenACS core isn't initialized, the
server couldn't possibly be operational, so if there's no enabled
version of the OpenACS core we simply mark the latest installed one
as enabled.</p></li><li class="listitem"><p>
enabled</strong></span>. If the OpenACS core isn&#39;t initialized,
the server couldn&#39;t possibly be operational, so if there&#39;s
no enabled version of the OpenACS core we simply mark the latest
installed one as enabled.</p></li><li class="listitem"><p>
<span class="strong"><strong>Load <code class="computeroutput">*-procs.tcl</code> files for enabled
packages</strong></span>, activating their APIs.</p></li><li class="listitem"><p>
<span class="strong"><strong>Load <code class="computeroutput">*-init.tcl</code> files for enabled
......@@ -97,8 +98,8 @@ filters and procedures, initialize data structures, etc.</p></li><li class="list
<span class="strong"><strong>Verify that the core has been
properly initialized</strong></span> by checking for the existence
of an NSV created by the request processor initialization code. If
it's not present, the server won't be operational, so we log an
error.</p></li>
it&#39;s not present, the server won&#39;t be operational, so we
log an error.</p></li>
</ol></div><p>At this point, <code class="computeroutput">bootstrap.tcl</code>
is done executing. AOLserver proceeds to source the remaining files
in the <code class="computeroutput">/tcl</code> directory (i.e.,
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Bootstrapping OpenACS</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="next" href="ext-auth-requirements.html" title="External Authentication Requirements"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="bootstrap-acs"></a>Bootstrapping OpenACS</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> </p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Bootstrapping OpenACS</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="tcl-doc.html" title="Documenting Tcl Files: Page Contracts and Libraries"><link rel="next" href="ext-auth-requirements.html" title="External Authentication Requirements"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="bootstrap-acs"></a>Bootstrapping OpenACS</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a> </p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Tcl code: /tcl/0-acs-init.tcl and /packages/acs-kernel/bootstrap.tcl</p></li></ul></div><p>This document describes the startup (bootstrapping) process for an AOLserver
......@@ -86,4 +86,4 @@ operational, so we log an error.</p></li></ol></div><p>
At this point, <code class="computeroutput">bootstrap.tcl</code> is done executing. AOLserver
proceeds to source the remaining files in the <code class="computeroutput">/tcl</code> directory
(i.e., unpackaged libraries) and begins listening for connections.
</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr><tr><td width="40%" align="left">Documenting Tcl Files: Page Contracts and Libraries </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> External Authentication Requirements</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/bootstrap-acs.html#comments">View comments on this page at openacs.org</a></center></body></html>
</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tcl-doc.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="ext-auth-requirements.html">Next</a></td></tr><tr><td width="40%" align="left">Documenting Tcl Files: Page Contracts and Libraries </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> External Authentication Requirements</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 3. Complete
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 3. Complete
Installation}</property>
<property name="doc(title)">Chapter 3. Complete
Installation</property>
......@@ -7,20 +7,20 @@ Installation</property>
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="individual-programs" leftLabel="Prev"
title="
Part II. Administrator's Guide"
Part II. Administrator&#39;s Guide"
rightLink="unix-installation" rightLabel="Next">
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="complete-install" id="complete-install"></a>Chapter 3. Complete
Installation</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="unix-installation">Install a
Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle">Install Oracle
8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres">Install
PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4">Install AOLserver
4</a></span></dt><dt><span class="sect1"><a href="openacs">Install OpenACS
5.7.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
5.9.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation">OpenACS
Installation Guide for Windows</a></span></dt><dt><span class="sect1"><a href="mac-installation">OpenACS
Installation Guide for Mac OS X</a></span></dt>
</dl>
</div>
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 3. Complete Installation</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="individual-programs.html" title="Prerequisite Software"><link rel="next" href="unix-installation.html" title="Install a Unix-like system and supporting software"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="complete-install"></a>Chapter 3. Complete Installation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.7.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows2000</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr><tr><td width="40%" align="left">Prerequisite Software </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Install a Unix-like system and supporting software</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/complete-install.html#comments">View comments on this page at openacs.org</a></center></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 3. Complete Installation</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="individual-programs.html" title="Prerequisite Software"><link rel="next" href="unix-installation.html" title="Install a Unix-like system and supporting software"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="complete-install"></a>Chapter 3. Complete Installation</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="unix-installation.html">Install a Unix-like system and supporting software</a></span></dt><dt><span class="sect1"><a href="oracle.html">Install Oracle 8.1.7</a></span></dt><dt><span class="sect1"><a href="postgres.html">Install PostgreSQL</a></span></dt><dt><span class="sect1"><a href="aolserver4.html">Install AOLserver 4</a></span></dt><dt><span class="sect1"><a href="openacs.html">Install OpenACS 5.9.0</a></span></dt><dt><span class="sect1"><a href="win2k-installation.html">OpenACS Installation Guide for Windows</a></span></dt><dt><span class="sect1"><a href="mac-installation.html">OpenACS Installation Guide for Mac OS X</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="individual-programs.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="unix-installation.html">Next</a></td></tr><tr><td width="40%" align="left">Prerequisite Software </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Install a Unix-like system and supporting software</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Configuring an OpenACS package}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Configuring an OpenACS package}</property>
<property name="doc(title)">Configuring an OpenACS package</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -17,12 +17,12 @@ package</h2></div></div></div><div class="authorblurb">
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="idp140400237553440" id="idp140400237553440"></a>Configuring an OpenACS package</h3></div></div></div><p>After you've installed and mounted your package, you can
<a name="idp140592104638184" id="idp140592104638184"></a>Configuring an OpenACS package</h3></div></div></div><p>After you&#39;ve installed and mounted your package, you can
configure each instance to act as you would like.</p><p>This is done from the Applications page. Log in, go to the Admin
or Control Panel, click on the subsite the application is in, and
click on Applications. If you click on the 'Parameters' link, you
will see a list of parameters that you can change for this
application.</p>
click on Applications. If you click on the 'Parameters'
link, you will see a list of parameters that you can change for
this application.</p>
</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Configuring an OpenACS package</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-mounting-packages.html" title="Mounting OpenACS packages"><link rel="next" href="configuring-configuring-permissions.html" title="Setting Permissions on an OpenACS package"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-mounting-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-configuring-permissions.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-configuring-packages"></a>Configuring an OpenACS package</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Configuring an OpenACS package</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-mounting-packages.html" title="Mounting OpenACS packages"><link rel="next" href="configuring-configuring-permissions.html" title="Setting Permissions on an OpenACS package"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-mounting-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-configuring-permissions.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-configuring-packages"></a>Configuring an OpenACS package</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140400237553440"></a>Configuring an OpenACS package</h3></div></div></div><p>After you've installed and mounted your package, you can
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140592104638184"></a>Configuring an OpenACS package</h3></div></div></div><p>After you've installed and mounted your package, you can
configure each instance to act as you would like. </p><p>This is done from the Applications page. Log in, go to the
Admin or Control Panel, click on the subsite the application is
in, and click on Applications. If you click on the 'Parameters'
link, you will see a list of parameters that you can change for
this application.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-mounting-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-configuring-permissions.html">Next</a></td></tr><tr><td width="40%" align="left">Mounting OpenACS packages </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Setting Permissions on an OpenACS package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-configuring-packages.html#comments">View comments on this page at openacs.org</a></center></body></html>
this application.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-mounting-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-configuring-permissions.html">Next</a></td></tr><tr><td width="40%" align="left">Mounting OpenACS packages </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Setting Permissions on an OpenACS package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Setting Permissions on an OpenACS package}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Setting Permissions on an OpenACS package}</property>
<property name="doc(title)">Setting Permissions on an OpenACS package</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -17,19 +17,19 @@ OpenACS package</h2></div></div></div><div class="authorblurb">
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="idp140400236096832" id="idp140400236096832"></a>Setting Permission on an OpenACS
package</h3></div></div></div><p>After you've installed and mounted your package, you can
<a name="idp140592104642200" id="idp140592104642200"></a>Setting Permission on an OpenACS
package</h3></div></div></div><p>After you&#39;ve installed and mounted your package, you can
configure each instance to act as you would like.</p><p>This is done from the Applications page. Log in, go to the Admin
or Control Panel, click on the subsite the application is in, and
click on Applications. If you click on the 'Permissions' link, you
will see and be able to set the permissions for that
click on Applications. If you click on the 'Permissions'
link, you will see and be able to set the permissions for that
application.</p><p>Each application may have different behavior for what Read
Create Write and Admin permissions mean, but generally the
permissions are straightforward. If you find the behavior is not
what you expect after setting permissions, you can post a bug in
the OpenACS bugtracker.</p><p>'The Public' refers to users to the website who are not logged
in. 'Registered Users' are people who have registered for the
site.</p>
the OpenACS bugtracker.</p><p>'The Public' refers to users to the website who are not
logged in. 'Registered Users' are people who have
registered for the site.</p>
</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Setting Permissions on an OpenACS package</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-configuring-packages.html" title="Configuring an OpenACS package"><link rel="next" href="how-do-I.html" title="How Do I?"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-configuring-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-configuring-permissions"></a>Setting Permissions on an OpenACS package</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Setting Permissions on an OpenACS package</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-configuring-packages.html" title="Configuring an OpenACS package"><link rel="next" href="how-do-I.html" title="How Do I?"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-configuring-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-configuring-permissions"></a>Setting Permissions on an OpenACS package</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140400236096832"></a>Setting Permission on an OpenACS package</h3></div></div></div><p>After you've installed and mounted your package, you can
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140592104642200"></a>Setting Permission on an OpenACS package</h3></div></div></div><p>After you've installed and mounted your package, you can
configure each instance to act as you would like. </p><p>This is done from the Applications page. Log in, go to the
Admin or Control Panel, click on the subsite the application is
in, and click on Applications. If you click on the 'Permissions'
......@@ -13,4 +13,4 @@
what you expect after setting permissions, you can post a bug in
the OpenACS bugtracker.</p><p>'The Public' refers to users to the website who are not
logged in. 'Registered Users' are people who have registered for
the site. </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-configuring-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr><tr><td width="40%" align="left">Configuring an OpenACS package </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> How Do I?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-configuring-permissions.html#comments">View comments on this page at openacs.org</a></center></body></html>
the site. </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-configuring-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="how-do-I.html">Next</a></td></tr><tr><td width="40%" align="left">Configuring an OpenACS package </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> How Do I?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Installing OpenACS packages}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Installing OpenACS packages}</property>
<property name="doc(title)">Installing OpenACS packages</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -16,26 +16,26 @@ Site"
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="idp140400236636944" id="idp140400236636944"></a>Installing OpenACS packages</h3></div></div></div><p>An OpenACS package extends your website and lets it do things it
wasn't able to do before. You can have a weblog, a forums, a
<a name="idp140592099246776" id="idp140592099246776"></a>Installing OpenACS packages</h3></div></div></div><p>An OpenACS package extends your website and lets it do things it
wasn&#39;t able to do before. You can have a weblog, a forums, a
calendar, or even do sophisticated project-management via your
website.</p><p>After you've installed OpenACS, you can congratulate yourself
for a job well done. Then, you'll probably want to install a couple
of packages.</p><p>To install packages, you have to be an administrator on the
OpenACS webserver. Log in, and you'll see a link to Admin or the
Control Panel. Click on that, then click on 'Install software'.
Packages are sometimes also referred to as applications or
software.</p><p>At this point, you'll need to determine whether or not you're
able to install from the repository, or whether you should install
from local files.</p><p>Basically, if you have a local CVS repository, or have custom
code, you need to install from 'Local Files'. Otherwise, you can
install from the OpenACS repository</p><p>If you want to install new packages, click on 'Install from
Repository' or 'Install from Local'. Select the package, and click
'Install checked applications'. The system will check to make sure
you have all necessary packages that the package you want depends
on. If you're installing from Local Files, and you are missing any
packages, you may have to add the packages your desired package
depends on: <a class="xref" href="upgrade-openacs-files" title="Upgrading the OpenACS files">the section called
website.</p><p>After you&#39;ve installed OpenACS, you can congratulate
yourself for a job well done. Then, you&#39;ll probably want to
install a couple of packages.</p><p>To install packages, you have to be an administrator on the
OpenACS webserver. Log in, and you&#39;ll see a link to Admin or
the Control Panel. Click on that, then click on 'Install
software'. Packages are sometimes also referred to as
applications or software.</p><p>At this point, you&#39;ll need to determine whether or not
you&#39;re able to install from the repository, or whether you
should install from local files.</p><p>Basically, if you have a local CVS repository, or have custom
code, you need to install from 'Local Files'. Otherwise,
you can install from the OpenACS repository</p><p>If you want to install new packages, click on 'Install from
Repository' or 'Install from Local'. Select the
package, and click 'Install checked applications'. The
system will check to make sure you have all necessary packages that
the package you want depends on. If you&#39;re installing from
Local Files, and you are missing any packages, you may have to add
the packages your desired package depends on: <a class="xref" href="upgrade-openacs-files" title="Upgrading the OpenACS files">the section called
&ldquo;Upgrading the OpenACS
files&rdquo;</a>
</p><p>If you run into any errors at all, check your
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Installing OpenACS packages</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="next" href="configuring-mounting-packages.html" title="Mounting OpenACS packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-mounting-packages.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-install-packages"></a>Installing OpenACS packages</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Installing OpenACS packages</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="next" href="configuring-mounting-packages.html" title="Mounting OpenACS packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-mounting-packages.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-install-packages"></a>Installing OpenACS packages</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140400236636944"></a>Installing OpenACS packages</h3></div></div></div><p>An OpenACS package extends your website and lets it do
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140592099246776"></a>Installing OpenACS packages</h3></div></div></div><p>An OpenACS package extends your website and lets it do
things it wasn't able to do before. You can have a weblog, a
forums, a calendar, or even do sophisticated project-management
via your website.</p><p>After you've installed OpenACS, you can congratulate
......@@ -26,4 +26,4 @@
</p><p>If you run into any errors at all, check your
/var/lib/aolserver/$OPENACS_SERVICE_NAME/log/error.log file, and
post your error on the OpenACS forums</p><p>Once the package has been installed, then you will need to
'mount' the package. The next section handles that.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-mounting-packages.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter 4. Configuring a new OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Mounting OpenACS packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-install-packages.html#comments">View comments on this page at openacs.org</a></center></body></html>
'mount' the package. The next section handles that.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-new-site.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-mounting-packages.html">Next</a></td></tr><tr><td width="40%" align="left">Chapter 4. Configuring a new OpenACS Site </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Mounting OpenACS packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Mounting OpenACS packages}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Mounting OpenACS packages}</property>
<property name="doc(title)">Mounting OpenACS packages</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -16,17 +16,19 @@ Site"
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="idp140400236054144" id="idp140400236054144"></a>Mounting OpenACS packages</h3></div></div></div><p>After you've installed your packages, you have to 'mount' them
in order to make them appear on your website.</p><p>Make sure you are logged in, and then click on the 'Admin' or
'Control Panel' link to get to the Site-Wide Administration page
(at /acs-admin). Click on the subsite you'd like the application to
be available at.</p><p>Subsites are a way of dividing your website into logical chunks.
<a name="idp140592104632200" id="idp140592104632200"></a>Mounting OpenACS packages</h3></div></div></div><p>After you&#39;ve installed your packages, you have to
'mount' them in order to make them appear on your
website.</p><p>Make sure you are logged in, and then click on the
'Admin' or 'Control Panel' link to get to the
Site-Wide Administration page (at /acs-admin). Click on the subsite
you&#39;d like the application to be available at.</p><p>Subsites are a way of dividing your website into logical chunks.
Often they represent different groups of users, or parts of an
organization.</p><p>Now click on 'Applications' (applications are the same thing as
packages). You'll see a list of Applications and the URLs that each
is located at. To mount a new application, you click on 'Add
application', enter the Application, title (application name), and
URL (URL folder name), and you're done.</p><p>Test it out now. The URL is based on a combination of the
organization.</p><p>Now click on 'Applications' (applications are the same
thing as packages). You&#39;ll see a list of Applications and the
URLs that each is located at. To mount a new application, you click
on 'Add application', enter the Application, title
(application name), and URL (URL folder name), and you&#39;re
done.</p><p>Test it out now. The URL is based on a combination of the
subsite URL and the application URL. So if you installed a package
in the Main Subsite at the URL calendar, it will be available at
http://www.yoursite.com/calendar. If you installed it at a subsite
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Mounting OpenACS packages</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-install-packages.html" title="Installing OpenACS packages"><link rel="next" href="configuring-configuring-packages.html" title="Configuring an OpenACS package"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-install-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-configuring-packages.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-mounting-packages"></a>Mounting OpenACS packages</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Mounting OpenACS packages</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="configuring-new-site.html" title="Chapter 4. Configuring a new OpenACS Site"><link rel="previous" href="configuring-install-packages.html" title="Installing OpenACS packages"><link rel="next" href="configuring-configuring-packages.html" title="Configuring an OpenACS package"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="configuring-install-packages.html">Prev</a> </td><th width="60%" align="center">Chapter 4. Configuring a new OpenACS Site</th><td width="20%" align="right"> <a accesskey="n" href="configuring-configuring-packages.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-mounting-packages"></a>Mounting OpenACS packages</h2></div></div></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:jade@rubick.com" target="_top">Jade Rubick</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140400236054144"></a>Mounting OpenACS packages</h3></div></div></div><p>After you've installed your packages, you have to 'mount'
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="idp140592104632200"></a>Mounting OpenACS packages</h3></div></div></div><p>After you've installed your packages, you have to 'mount'
them in order to make them appear on your website.</p><p>Make sure you are logged in, and then click on the
'Admin' or 'Control Panel' link to get to the Site-Wide
Administration page (at /acs-admin). Click on the subsite you'd
......@@ -18,4 +18,4 @@
package in the Main Subsite at the URL calendar, it will be
available at http://www.yoursite.com/calendar. If you installed
it at a subsite that has a URL intranet, then it would be
located at http://www.yoursite.com/intranet/calendar.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-install-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-configuring-packages.html">Next</a></td></tr><tr><td width="40%" align="left">Installing OpenACS packages </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Configuring an OpenACS package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-mounting-packages.html#comments">View comments on this page at openacs.org</a></center></body></html>
located at http://www.yoursite.com/intranet/calendar.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="configuring-install-packages.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-configuring-packages.html">Next</a></td></tr><tr><td width="40%" align="left">Installing OpenACS packages </td><td width="20%" align="center"><a accesskey="u" href="configuring-new-site.html">Up</a></td><td width="40%" align="right"> Configuring an OpenACS package</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 4. Configuring a new OpenACS
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 4. Configuring a new OpenACS
Site}</property>
<property name="doc(title)">Chapter 4. Configuring a new OpenACS
Site</property>
......@@ -7,13 +7,13 @@ Site</property>
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="mac-installation" leftLabel="Prev"
title="
Part II. Administrator's Guide"
Part II. Administrator&#39;s Guide"
rightLink="configuring-install-packages" rightLabel="Next">
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="configuring-new-site" id="configuring-new-site"></a>Chapter 4. Configuring
a new OpenACS Site</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="configuring-install-packages">Installing OpenACS
packages</a></span></dt><dt><span class="sect1"><a href="configuring-mounting-packages">Mounting OpenACS
packages</a></span></dt><dt><span class="sect1"><a href="configuring-configuring-packages">Configuring an OpenACS
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 4. Configuring a new OpenACS Site</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="next" href="configuring-install-packages.html" title="Installing OpenACS packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="configuring-install-packages.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="configuring-new-site"></a>Chapter 4. Configuring a new OpenACS Site</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="configuring-install-packages.html">Installing OpenACS packages</a></span></dt><dt><span class="sect1"><a href="configuring-mounting-packages.html">Mounting OpenACS packages</a></span></dt><dt><span class="sect1"><a href="configuring-configuring-packages.html">Configuring an OpenACS package</a></span></dt><dt><span class="sect1"><a href="configuring-configuring-permissions.html">Setting Permissions on an OpenACS package</a></span></dt><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 4. Configuring a new OpenACS Site</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="mac-installation.html" title="OpenACS Installation Guide for Mac OS X"><link rel="next" href="configuring-install-packages.html" title="Installing OpenACS packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="configuring-install-packages.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="configuring-new-site"></a>Chapter 4. Configuring a new OpenACS Site</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="configuring-install-packages.html">Installing OpenACS packages</a></span></dt><dt><span class="sect1"><a href="configuring-mounting-packages.html">Mounting OpenACS packages</a></span></dt><dt><span class="sect1"><a href="configuring-configuring-packages.html">Configuring an OpenACS package</a></span></dt><dt><span class="sect1"><a href="configuring-configuring-permissions.html">Setting Permissions on an OpenACS package</a></span></dt><dt><span class="sect1"><a href="how-do-I.html">How Do I?</a></span></dt></dl></div><div class="authorblurb"><p>by <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><p>In this chapter, <span class="strong"><strong>Configuring</strong></span> refers to making changes to a new OpenACS site through the web interface. In crude terms, these changes happen in the database, and are upgrade-safe. <span class="strong"><strong>Customizing</strong></span> refers to changes that touch the file system, and require some planning if easy upgradability is to be maintained.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-install-packages.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Installation Guide for Mac OS X </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Installing OpenACS packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/configuring-new-site.html#comments">View comments on this page at openacs.org</a></center></body></html>
</div><p>In this chapter, <span class="strong"><strong>Configuring</strong></span> refers to making changes to a new OpenACS site through the web interface. In crude terms, these changes happen in the database, and are upgrade-safe. <span class="strong"><strong>Customizing</strong></span> refers to changes that touch the file system, and require some planning if easy upgradability is to be maintained.</p></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="mac-installation.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="configuring-install-packages.html">Next</a></td></tr><tr><td width="40%" align="left">OpenACS Installation Guide for Mac OS X </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Installing OpenACS packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Appendix C. Credits}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Appendix C. Credits}</property>
<property name="doc(title)">Appendix C. Credits</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="aolserver" leftLabel="Prev"
title="
Part II. Administrator's Guide"
Part II. Administrator&#39;s Guide"
rightLink="install-origins" rightLabel="Next">
<div class="appendix">
<div class="titlepage"><div><div><h2 class="title">
<a name="credits" id="credits"></a>Appendix C. Credits</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="section"><a href="install-origins">Where did
this document come from?</a></span></dt><dt><span class="section"><a href="os-install">Linux Install
Guides</a></span></dt><dt><span class="section"><a href="os-security">Security
......@@ -25,7 +25,7 @@ OpenACS documentation staff.</div><p>
this guide from many sources of information.</p><p>
<a class="ulink" href="mailto:joel\@aufrecht.org" target="_top">Joel Aufrecht</a> updated the document starting in March
2003.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc;">
<li class="listitem"><p><a class="ulink" href="http://openacs.org/doc/openacs/install/" target="_top">OpenACS 3.x Installation Guide</a></p></li><li class="listitem"><p><a class="ulink" href="http://www.orchardlabs.com/freebsd/" target="_top">Gilbert Wong's FreeBSD installation guide</a></p></li><li class="listitem"><p><a class="ulink" href="http://www.kurup.com/acs/openacs-4.html" target="_top">My own Brief OpenACS4 installation guide</a></p></li>
<li class="listitem"><p><a class="ulink" href="http://openacs.org/doc/openacs/install/" target="_top">OpenACS 3.x Installation Guide</a></p></li><li class="listitem"><p><a class="ulink" href="https://web.archive.org/web/20011204174701/http://www.orchardlabs.com:80/freebsd/" target="_top">Gilbert Wong&#39;s FreeBSD installation guide</a></p></li><li class="listitem"><p><a class="ulink" href="http://www.kurup.com/acs/openacs-4.html" target="_top">My own Brief OpenACS4 installation guide</a></p></li>
</ul></div><p>Acknowledgments for versions of the above documents go (in no
particular order) to Bryan Quinn, Adam Farkas, Brian Stein, Doug
Hoffman, Ravi Jasuja, Hiro Iwashima, Ryan Lee, Jonathan Goler,
......@@ -44,8 +44,8 @@ Rubick, Fred Yankowski, Dan Chak, Sebastiano Pilla, Reuven Lerner,
Malte Sussdorff, Stan Kaufman and Pascal Scheffers.</p><p>
<span class="strong"><strong>All questions and
comments</strong></span> regarding this guide should be posted on
the <a class="ulink" href="http://openacs.org/forums/" target="_top">OpenACS forums</a>.</p><div class="cvstag">($&zwnj;Id: credits.xml,v 1.12 2006/07/17 05:38:37
torbenb Exp $)</div>
the <a class="ulink" href="http://openacs.org/forums/" target="_top">OpenACS forums</a>.</p><div class="cvstag">($&zwnj;Id: credits.xml,v 1.12.14.5 2017/06/18
09:08:36 gustafn Exp $)</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
leftLink="aolserver" leftLabel="Prev" leftTitle="Install AOLserver 3.3oacs1"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Appendix C. Credits</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="next" href="install-origins.html" title="Where did this document come from?"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr></table><hr></div><div class="appendix"><div class="titlepage"><div><div><h2 class="title"><a name="credits"></a>Appendix C. Credits</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Appendix C. Credits</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="aolserver.html" title="Install AOLserver 3.3oacs1"><link rel="next" href="install-origins.html" title="Where did this document come from?"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr></table><hr></div><div class="appendix"><div class="titlepage"><div><div><h2 class="title"><a name="credits"></a>Appendix C. Credits</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="section"><a href="install-origins.html">Where did this document come from?</a></span></dt><dt><span class="section"><a href="os-install.html">Linux Install Guides</a></span></dt><dt><span class="section"><a href="os-security.html">Security Information</a></span></dt><dt><span class="section"><a href="install-resources.html">Resources</a></span></dt></dl></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><p><a class="ulink" href="mailto:vinod@kurup.com" target="_top">Vinod Kurup</a> put
......@@ -8,7 +8,7 @@
updated the document starting in March 2003.</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>
<a class="ulink" href="http://openacs.org/doc/openacs/install/" target="_top">OpenACS 3.x Installation Guide</a>
</p></li><li class="listitem"><p>
<a class="ulink" href="http://www.orchardlabs.com/freebsd/" target="_top">Gilbert Wong's FreeBSD
<a class="ulink" href="https://web.archive.org/web/20011204174701/http://www.orchardlabs.com:80/freebsd/" target="_top">Gilbert Wong's FreeBSD
installation guide</a>
</p></li><li class="listitem"><p>
<a class="ulink" href="http://www.kurup.com/acs/openacs-4.html" target="_top">My own Brief OpenACS4
......@@ -33,4 +33,4 @@
</p><p>
<span class="strong"><strong>All questions and comments</strong></span> regarding
this guide should be posted on the <a class="ulink" href="http://openacs.org/forums/" target="_top">OpenACS forums</a>.
</p><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr><tr><td width="40%" align="left">Install AOLserver 3.3oacs1 </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Where did this document come from?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/credits.html#comments">View comments on this page at openacs.org</a></center></body></html>
</p><div class="cvstag">($Id$)</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="aolserver.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="install-origins.html">Next</a></td></tr><tr><td width="40%" align="left">Install AOLserver 3.3oacs1 </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Where did this document come from?</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {Appendix D. Using CVS with an
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Appendix D. Using CVS with an
OpenACS Site}</property>
<property name="doc(title)">Appendix D. Using CVS with an
OpenACS Site</property>
......@@ -18,9 +18,9 @@ an OpenACS Site</h2></div></div></div><div class="authorblurb">
</p>
OpenACS docs are written by the named authors, and may be edited by
OpenACS documentation staff.</div><p>
<a name="cvs-service-import" id="cvs-service-import"></a><b>Add
the Service to CVS - OPTIONAL. </b><a class="indexterm" name="idp140400226929072" id="idp140400226929072"></a>These steps
take an existing OpenACS directory and add it to a <a class="link" href="install-cvs" title="Initialize CVS (OPTIONAL)">CVS
<a name="cvs-service-import" id="cvs-service-import"></a><strong>Add the Service to CVS -
OPTIONAL. </strong><a class="indexterm" name="idp140592106625944" id="idp140592106625944"></a>These steps take
an existing OpenACS directory and add it to a <a class="link" href="install-cvs" title="Initialize CVS (OPTIONAL)">CVS
repository</a>.</p><div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem">
<p>Create and set permissions on a subdirectory in the local cvs
......@@ -56,15 +56,15 @@ move aside, and then check out all of the files. In the cvs import
command, <code class="computeroutput"><span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code> refers to
the cvs repository to use; it uses the CVSROOT plus this string,
i.e. <code class="computeroutput">/cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
</code>. "OpenACS"
is the vendor tag, and "oacs-5-7-0-final" is the release tag. These
tags will be useful in upgrading and branching. -m sets the version
comment.</p><pre class="screen">
</code>.
"OpenACS" is the vendor tag, and
"oacs-5-9-0-final" is the release tag. These tags will be
useful in upgrading and branching. -m sets the version comment.</p><pre class="screen">
[root root]# <strong class="userinput"><code>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
</code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
</code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-7-0-final</code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-9-0-final</code></strong>
N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/license.txt
N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/readme.txt
<span class="emphasis"><em>(many lines omitted)</em></span>
......@@ -76,7 +76,7 @@ No conflicts created by this import
[root root]#
<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-7-0-final
cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-9-0-final
exit</span></span>
</pre><p>Move the original directory to a temporary location, and check
out the cvs repository in its place.</p><pre class="screen">
......@@ -113,7 +113,7 @@ temporary copy of the uploaded files.</p></li>
</ol></div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
leftLink="i18n-translators" leftLabel="Prev" leftTitle="Translator's Guide"
leftLink="i18n-translators" leftLabel="Prev" leftTitle="Translator&#39;s Guide"
rightLink="acs-plat-dev" rightLabel="Next" rightTitle="Part IV. For
OpenACS Platform Developers"
homeLink="index" homeLabel="Home"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Appendix D. Using CVS with an OpenACS Site</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="i18n-translators.html" title="Translator's Guide"><link rel="next" href="acs-plat-dev.html" title="Part IV. For OpenACS Platform Developers"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr></table><hr></div><div class="appendix"><div class="titlepage"><div><div><h2 class="title"><a name="cvs-tips"></a>Appendix D. Using CVS with an OpenACS Site</h2></div></div></div><div class="authorblurb"><p> By <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Appendix D. Using CVS with an OpenACS Site</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="i18n-translators.html" title="Translator's Guide"><link rel="next" href="acs-plat-dev.html" title="Part IV. For OpenACS Platform Developers"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr></table><hr></div><div class="appendix"><div class="titlepage"><div><div><h2 class="title"><a name="cvs-tips"></a>Appendix D. Using CVS with an OpenACS Site</h2></div></div></div><div class="authorblurb"><p> By <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><p><a name="cvs-service-import"></a><b>Add the Service to CVS - OPTIONAL. </b><a class="indexterm" name="idp140400226929072"></a>These steps take an existing OpenACS directory and add
</div><p><a name="cvs-service-import"></a><b>Add the Service to CVS - OPTIONAL. </b><a class="indexterm" name="idp140592106625944"></a>These steps take an existing OpenACS directory and add
it to a <a class="link" href="install-cvs.html" title="Initialize CVS (OPTIONAL)">CVS
repository</a>.</p><div class="orderedlist"><ol class="orderedlist" type="1"><li class="listitem"><p>Create and set permissions on a subdirectory in the local cvs repository.</p><pre class="screen">[root root]# <strong class="userinput"><code>mkdir /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
[root root]#<strong class="userinput"><code> chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME.$OPENACS_SERVICE_NAME</span></span> /cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
......@@ -21,11 +21,11 @@ logout
plus this string,
i.e.
<code class="computeroutput">/cvsroot/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code>.
"OpenACS" is the vendor tag, and "oacs-5-7-0-final" is the
"OpenACS" is the vendor tag, and "oacs-5-9-0-final" is the
release tag. These tags will be useful in upgrading and
branching. -m sets the version comment.</p><pre class="screen">[root root]# <strong class="userinput"><code>su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-7-0-final</code></strong>
[$OPENACS_SERVICE_NAME $OPENACS_SERVICE_NAME]$ <strong class="userinput"><code>cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-9-0-final</code></strong>
N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/license.txt
N <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>/readme.txt
<span class="emphasis"><em>(many lines omitted)</em></span>
......@@ -37,7 +37,7 @@ No conflicts created by this import
[root root]#
<span class="action"><span class="action">su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cd /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-7-0-final
cvs import -m "initial install" <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> OpenACS oacs-5-9-0-final
exit</span></span></pre><p>Move the original directory to a temporary location, and check out the cvs repository in its place.</p><pre class="screen">[root root]# <strong class="userinput"><code>mv /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/tmp</code></strong>
[root root]# <strong class="userinput"><code>mkdir /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
[root root]# <strong class="userinput"><code>chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>.<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span> /var/lib/aolserver/<span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span></code></strong>
......@@ -60,4 +60,4 @@ chown <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME<
su - <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
cd /var/lib/aolserver
cvs checkout <span class="replaceable"><span class="replaceable">$OPENACS_SERVICE_NAME</span></span>
exit</span></span></pre></li><li class="listitem"><p> If the service starts correctly, come back and remove the temporary copy of the uploaded files.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr><tr><td width="40%" align="left">Translator's Guide </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Part IV. For OpenACS Platform Developers</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/cvs-tips.html#comments">View comments on this page at openacs.org</a></center></body></html>
exit</span></span></pre></li><li class="listitem"><p> If the service starts correctly, come back and remove the temporary copy of the uploaded files.</p></li></ol></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="i18n-translators.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="acs-plat-dev.html">Next</a></td></tr><tr><td width="40%" align="left">Translator's Guide </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> Part IV. For OpenACS Platform Developers</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 7. Database
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 7. Database
Management}</property>
<property name="doc(title)">Chapter 7. Database
Management</property>
......@@ -7,13 +7,13 @@ Management</property>
<include src="/packages/acs-core-docs/lib/navheader"
leftLink="maint-performance" leftLabel="Prev"
title="
Part II. Administrator's Guide"
Part II. Administrator&#39;s Guide"
rightLink="remote-postgres" rightLabel="Next">
<div class="chapter">
<div class="titlepage"><div><div><h2 class="title">
<a name="database-management" id="database-management"></a>Chapter 7. Database
Management</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="remote-postgres">Running a
PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace">Deleting a
tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum">Vacuum Postgres
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 7. Database Management</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="next" href="remote-postgres.html" title="Running a PostgreSQL database on another server"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="database-management"></a>Chapter 7. Database Management</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 7. Database Management</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-admin.html" title="Part II. Administrator's Guide"><link rel="previous" href="maint-performance.html" title="Diagnosing Performance Problems"><link rel="next" href="remote-postgres.html" title="Running a PostgreSQL database on another server"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><th width="60%" align="center">Part II. Administrator's Guide</th><td width="20%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="database-management"></a>Chapter 7. Database Management</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="remote-postgres.html">Running a PostgreSQL database on another server</a></span></dt><dt><span class="sect1"><a href="install-openacs-delete-tablespace.html">Deleting a tablespace</a></span></dt><dt><span class="sect1"><a href="install-next-nightly-vacuum.html">Vacuum Postgres nightly</a></span></dt></dl></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:joel@aufrecht.org" target="_top">Joel Aufrecht</a></p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr><tr><td width="40%" align="left">Diagnosing Performance Problems </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Running a PostgreSQL database on another server</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/database-management.html#comments">View comments on this page at openacs.org</a></center></body></html>
</div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="maint-performance.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="remote-postgres.html">Next</a></td></tr><tr><td width="40%" align="left">Diagnosing Performance Problems </td><td width="20%" align="center"><a accesskey="u" href="acs-admin.html">Up</a></td><td width="40%" align="right"> Running a PostgreSQL database on another server</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Database Access API</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="apm-design.html" title="Package Manager Design"><link rel="next" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api-detailed"></a>Database Access API</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a>. Revised and expanded by Roberto Mello (rmello at fslc dot usu dot edu), July 2002. </p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Database Access API</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="kernel-doc.html" title="Chapter 15. Kernel Documentation"><link rel="previous" href="apm-design.html" title="Package Manager Design"><link rel="next" href="i18n-requirements.html" title="OpenACS Internationalization Requirements"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><th width="60%" align="center">Chapter 15. Kernel Documentation</th><td width="20%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api-detailed"></a>Database Access API</h2></div></div></div><div class="authorblurb"><p>By <a class="ulink" href="mailto:jsalz@mit.edu" target="_top">Jon Salz</a>. Revised and expanded by Roberto Mello (rmello at fslc dot usu dot edu), July 2002. </p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p>Tcl procedures: /packages/acs-kernel/10-database-procs.tcl</p></li><li class="listitem"><p>Tcl initialization: /packages/acs-kernel/database-init.tcl</p></li></ul></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="db-api-detailed-bigpicture"></a>The Big Picture</h3></div></div></div><p>
......@@ -29,9 +29,9 @@ proc foo { db args } {
}
db_transaction {
db_dml unused "insert into greeble(bork) values(33)"
foo $db
db_dml unused "insert into greeble(bork) values(50)"
db_dml unused {insert into greeble(bork) values(33)}
foo $db
db_dml unused {insert into greeble(bork) values(50)}
}
</pre><p>
......@@ -314,7 +314,7 @@ DML difficult. Here is an example that illustrates why:</p><pre class="programli
set bar ""
set baz ""
db_dml foo_create "insert into foo(bar, baz) values(:bar, :baz)"
db_dml foo_create {insert into foo(bar, baz) values(:bar, :baz)}
#
# the values of the "bar" and "baz" columns in the new row are both
# null, because Oracle has coerced the empty string (even for the
......@@ -333,7 +333,7 @@ explicitly to <code class="computeroutput">null</code>, e.g.:</p><pre class="pro
set bar [db_null]
set baz [db_null]
db_dml foo_create "insert into foo(bar, baz) values(:bar, :baz)"
db_dml foo_create {insert into foo(bar, baz) values(:bar, :baz)}
#
# sets the values for both the "bar" and "baz" columns to null
......@@ -471,11 +471,11 @@ specified, should be a list of <span class="emphasis"><em>paths to files</em></s
insert. Only one of <code class="computeroutput">-blobs</code>, <code class="computeroutput">-clobs</code>,
<code class="computeroutput">-blob_files</code>, and <code class="computeroutput">-clob_files</code> may be provided.</p><p>Example:</p><pre class="programlisting">
db_dml insert_photos "
db_dml insert_photos {
insert photos(photo_id, image, thumbnail_image)
values(photo_id_seq.nextval, empty_blob(), empty_blob())
returning image, thumbnail_image into :1, :2
" -blob_files [list "/var/tmp/the_photo" "/var/tmp/the_thumbnail"]
} -blob_files [list "/var/tmp/the_photo" "/var/tmp/the_thumbnail"]
</pre><p>
This inserts a new row into the <code class="computeroutput">photos</code> table, with the contents
......@@ -494,7 +494,7 @@ of the files <code class="computeroutput">/var/tmp/the_photo</code> and
<span class="strong"><strong>db_write_blob</strong></span> <span class="emphasis"><em>statement-name</em></span> <span class="emphasis"><em>sql</em></span> [ -bind <span class="emphasis"><em>bind_set_id</em></span> | -bind <span class="emphasis"><em>bind_value_list</em></span> ]
<span class="strong"><strong>db_blob_get_file</strong></span> <span class="emphasis"><em>statement-name</em></span> <span class="emphasis"><em>sql</em></span> [ -bind <span class="emphasis"><em>bind_set_id</em></span> | -bind <span class="emphasis"><em>bind_value_list</em></span> ]
</pre><p>Analagous to <code class="computeroutput">ns_ora write_clob/write_blob/blob_get_file</code>.
</pre><p>Analogous to <code class="computeroutput">ns_ora write_clob/write_blob/blob_get_file</code>.
</p></dd><dt><span class="term"><span class="strong"><strong><code class="computeroutput"><a name="kernel.dbapi_db_release_unused_handles"></a>db_release_unused_handles</code></strong></span></span></dt><dd><pre class="programlisting">
......@@ -512,8 +512,8 @@ If there is no <code class="computeroutput">on_error</code> code, any errors wil
proc replace_the_foo { col } {
db_transaction {
db_dml "delete from foo"
db_dml "insert into foo(col) values($col)"
db_dml delete {delete from foo}
db_dml insert {insert into foo(col) values($col)}
}
}
......@@ -527,7 +527,7 @@ print_the_foo ; # Writes out "foo is 8"
db_transaction {
replace_the_foo 14
print_the_foo ; # Writes out "foo is 14"
db_dml "insert into some_other_table(col) values(999)"
db_dml insert_foo {insert into some_other_table(col) values(999)}
...
db_abort_transaction
} on_error {
......@@ -541,7 +541,7 @@ print_the_foo ; # Writes out "foo is 8"
</span></dt><dd><pre class="programlisting">
<span class="strong"><strong>db_abort_transaction</strong></span>
</pre><p>Aborts all levels of a transaction. That is if this is called within
several nested transactions, all of them are terminated. Use this insetead of
several nested transactions, all of them are terminated. Use this instead of
<code class="computeroutput">db_dml "abort" "abort transaction"</code>.
......@@ -728,4 +728,4 @@ db_with_handle db {
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.
</p></dd></dl></div><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr><tr><td width="40%" align="left">Package Manager Design </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> OpenACS Internationalization Requirements</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/db-api-detailed.html#comments">View comments on this page at openacs.org</a></center></body></html>
</p></dd></dl></div><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apm-design.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="i18n-requirements.html">Next</a></td></tr><tr><td width="40%" align="left">Package Manager Design </td><td width="20%" align="center"><a accesskey="u" href="kernel-doc.html">Up</a></td><td width="40%" align="right"> OpenACS Internationalization Requirements</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>The OpenACS Database Access API</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter 11. Development Reference"><link rel="previous" href="request-processor.html" title="The Request Processor"><link rel="next" href="templates.html" title="Using Templates in OpenACS"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><th width="60%" align="center">Chapter 11. Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api"></a>The OpenACS Database Access API</h2></div></div></div><p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>The OpenACS Database Access API</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="dev-guide.html" title="Chapter 11. Development Reference"><link rel="previous" href="request-processor.html" title="The Request Processor"><link rel="next" href="templates.html" title="Using Templates in OpenACS"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><th width="60%" align="center">Chapter 11. Development Reference</th><td width="20%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="db-api"></a>The OpenACS Database Access API</h2></div></div></div><p>
By Pete Su and Jon Salz. Modified by Roberto Mello.
</p><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="db-api-overview"></a>Overview</h3></div></div></div><p>
One of OpenACS's great strengths is that code written for it is
......@@ -103,8 +103,8 @@ and some_table.condition_p = '$foo'</pre><p>
What the DB API (in conjuntion with the database drivers
implemented for aolserver) do is send the SQL statement to the
server for parsing, then <span class="emphasis"><em>bind</em></span> values to the
variables and sends those values along seperately as a second
step. This seperate binding step is where the term
variables and sends those values along separately as a second
step. This separate binding step is where the term
<span class="emphasis"><em>bind variable</em></span> comes from.
</p><p>
This split has several advantages. First, type checking happens
......@@ -299,7 +299,7 @@ PoolSequence.sec_id_seq=20
</span></dt><dd><pre class="programlisting">
db_abort_transaction
</pre><p>Aborts all levels of a transaction. That is if this is called within
several nested transactions, all of them are terminated. Use this insetead of
several nested transactions, all of them are terminated. Use this instead of
<code class="computeroutput">db_dml "abort" "abort transaction"</code>.
......@@ -526,11 +526,11 @@ db_dml <span class="emphasis"><em>statement-name</em></span> <span class="emphas
insert. Only one of <code class="computeroutput">-blobs</code>, <code class="computeroutput">-clobs</code>,
<code class="computeroutput">-blob_files</code>, and <code class="computeroutput">-clob_files</code> may be provided.</p><p>Example:</p><pre class="programlisting">
db_dml insert_photos "
db_dml insert_photos {
insert photos(photo_id, image, thumbnail_image)
values(photo_id_seq.nextval, empty_blob(), empty_blob())
returning image, thumbnail_image into :1, :2
" -blob_files [list "/var/tmp/the_photo" "/var/tmp/the_thumbnail"]
} -blob_files [list "/var/tmp/the_photo" "/var/tmp/the_thumbnail"]
</pre><p>
This inserts a new row into the <code class="computeroutput">photos</code> table, with the contents
......@@ -549,7 +549,7 @@ db_write_clob <span class="emphasis"><em>statement-name</em></span> <span class=
db_write_blob <span class="emphasis"><em>statement-name</em></span> <span class="emphasis"><em>sql</em></span> [ -bind <span class="emphasis"><em>bind_set_id</em></span> | -bind <span class="emphasis"><em>bind_value_list</em></span> ]
db_blob_get_file <span class="emphasis"><em>statement-name</em></span> <span class="emphasis"><em>sql</em></span> [ -bind <span class="emphasis"><em>bind_set_id</em></span> | -bind <span class="emphasis"><em>bind_value_list</em></span> ]
</pre><p>Analagous to <code class="computeroutput">ns_ora write_clob/write_blob/blob_get_file</code>.
</pre><p>Analogous to <code class="computeroutput">ns_ora write_clob/write_blob/blob_get_file</code>.
</p></dd><dt><span class="term"><code class="computeroutput"><a name="devguide.dbapi_db_release_unused_handles"></a>db_release_unused_handles</code></span></dt><dd><pre class="programlisting">
......@@ -567,8 +567,8 @@ db_transaction <span class="emphasis"><em>code_block</em></span> [ on_error { <s
proc replace_the_foo { col } {
db_transaction {
db_dml "delete from foo"
db_dml "insert into foo(col) values($col)"
db_dml delete {delete from foo}
db_dml insert {insert into foo(col) values(:col)}
}
}
......@@ -582,7 +582,7 @@ print_the_foo ; # Writes out "foo is 8"
db_transaction {
replace_the_foo 14
print_the_foo ; # Writes out "foo is 14"
db_dml "insert into some_other_table(col) values(999)"
db_dml insert_foo {insert into some_other_table(col) values(999)}
...
db_abort_transaction
} on_error {
......@@ -638,9 +638,8 @@ set baz ""
# Clean out the foo table
#
db_dml unused "delete from foo"
db_dml unused "insert into foo(baz) values('$baz')"
db_dml unused {delete from foo}
db_dml unused {insert into foo(baz) values(:baz)}
set n_rows [db_string unused "select count(*) from foo where baz is null"]
#
......@@ -653,7 +652,7 @@ set n_rows [db_string unused "select count(*) from foo where baz is null"]
<code class="computeroutput">null</code> by writing:
</p><pre class="programlisting">
db_dml foo_insert "insert into foo(baz) values(:1)" {[db_nullify_empty_string $baz]}
db_dml foo_insert {insert into foo(baz) values(:1)} {[db_nullify_empty_string $baz]}
</pre></dd></dl></div><p>
</p><div class="cvstag">($Id$)</div><p>
......@@ -689,4 +688,4 @@ db_list -cache_key page_${page_id}_get_elements get_elements {}
db_flush_cache -cache_key_pattern page_${page_id}_*
</pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr><tr><td width="40%" align="left">The Request Processor </td><td width="20%" align="center"><a accesskey="u" href="dev-guide.html">Up</a></td><td width="40%" align="right"> Using Templates in OpenACS</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/db-api.html#comments">View comments on this page at openacs.org</a></center></body></html>
</pre></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="request-processor.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="templates.html">Next</a></td></tr><tr><td width="40%" align="left">The Request Processor </td><td width="20%" align="center"><a accesskey="u" href="dev-guide.html">Up</a></td><td width="40%" align="right"> Using Templates in OpenACS</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 11. Development
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 11. Development
Reference}</property>
<property name="doc(title)">Chapter 11. Development
Reference</property>
......@@ -14,7 +14,7 @@ Developers"
<div class="titlepage"><div><div><h2 class="title">
<a name="dev-guide" id="dev-guide"></a>Chapter 11. Development
Reference</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="packages">OpenACS
Packages</a></span></dt><dt><span class="sect1"><a href="objects">OpenACS Data Models
and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor">The
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 11. Development Reference</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="tutorial-future-topics.html" title="Future Topics"><link rel="next" href="packages.html" title="OpenACS Packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="dev-guide"></a>Chapter 11. Development Reference</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using Form Builder: building html forms dynamically</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr><tr><td width="40%" align="left">Future Topics </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/dev-guide.html#comments">View comments on this page at openacs.org</a></center></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 11. Development Reference</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="tutorial-future-topics.html" title="Future Topics"><link rel="next" href="packages.html" title="OpenACS Packages"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="dev-guide"></a>Chapter 11. Development Reference</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="packages.html">OpenACS Packages</a></span></dt><dt><span class="sect1"><a href="objects.html">OpenACS Data Models and the Object System</a></span></dt><dt><span class="sect1"><a href="request-processor.html">The Request Processor</a></span></dt><dt><span class="sect1"><a href="db-api.html">The OpenACS Database Access API</a></span></dt><dt><span class="sect1"><a href="templates.html">Using Templates in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions.html">Groups, Context, Permissions</a></span></dt><dt><span class="sect1"><a href="subsites.html">Writing OpenACS Application Pages</a></span></dt><dt><span class="sect1"><a href="parties.html">Parties in OpenACS</a></span></dt><dt><span class="sect1"><a href="permissions-tediously-explained.html">OpenACS Permissions Tediously Explained</a></span></dt><dt><span class="sect1"><a href="object-identity.html">Object Identity</a></span></dt><dt><span class="sect1"><a href="programming-with-aolserver.html">Programming with AOLserver</a></span></dt><dt><span class="sect1"><a href="form-builder.html">Using Form Builder: building html forms dynamically</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="tutorial-future-topics.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="packages.html">Next</a></td></tr><tr><td width="40%" align="left">Future Topics </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Packages</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 13. Documentation
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 13. Documentation
Standards}</property>
<property name="doc(title)">Chapter 13. Documentation
Standards</property>
......@@ -14,7 +14,7 @@ Developers"
<div class="titlepage"><div><div><h2 class="title">
<a name="doc-standards" id="doc-standards"></a>Chapter 13. Documentation
Standards</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="docbook-primer">OpenACS
Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode">Using PSGML mode
in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode">Using nXML mode in
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 13. Documentation Standards</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="next" href="docbook-primer.html" title="OpenACS Documentation Guide"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="doc-standards"></a>Chapter 13. Documentation Standards</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Testing </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Documentation Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/doc-standards.html#comments">View comments on this page at openacs.org</a></center></body></html>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Chapter 13. Documentation Standards</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="acs-package-dev.html" title="Part III. For OpenACS Package Developers"><link rel="previous" href="automated-testing-best-practices.html" title="Automated Testing"><link rel="next" href="docbook-primer.html" title="OpenACS Documentation Guide"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><th width="60%" align="center">Part III. For OpenACS Package Developers</th><td width="20%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr></table><hr></div><div class="chapter"><div class="titlepage"><div><div><h2 class="title"><a name="doc-standards"></a>Chapter 13. Documentation Standards</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl class="toc"><dt><span class="sect1"><a href="docbook-primer.html">OpenACS Documentation Guide</a></span></dt><dt><span class="sect1"><a href="psgml-mode.html">Using PSGML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="nxml-mode.html">Using nXML mode in Emacs</a></span></dt><dt><span class="sect1"><a href="filename.html">Detailed Design Documentation Template</a></span></dt><dt><span class="sect1"><a href="requirements-template.html">System/Application Requirements Template</a></span></dt></dl></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="automated-testing-best-practices.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="docbook-primer.html">Next</a></td></tr><tr><td width="40%" align="left">Automated Testing </td><td width="20%" align="center"><a accesskey="u" href="acs-package-dev.html">Up</a></td><td width="40%" align="right"> OpenACS Documentation Guide</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {Constraint naming standard}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Constraint naming standard}</property>
<property name="doc(title)">Constraint naming standard</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -23,16 +23,15 @@ associate a particular constraint with our data model. This gives
us two real advantages:</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc;">
<li class="listitem"><p>We can quickly identify and fix any errors.</p></li><li class="listitem"><p>We can reliabily modify or drop constraints</p></li>
</ul></div><div>Why do we need a naming convention?</div><p>
<a class="ulink" href="http://oradoc.photo.net/ora8doc/DOC/server803/A54647_01/ch2.htm#2956" target="_top">Oracle limits names</a>, in general, to 30
<a class="ulink" href="https://docs.oracle.com/database/121/SQLRF/sql_elements008.htm#SQLRF00223" target="_top">Oracle limits names</a>, in general, to 30
characters, which is hardly enough for a human readable constraint
name.</p>
</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="eng-standards-constraint-naming-abbr" id="eng-standards-constraint-naming-abbr"></a>Abbreviations</h3></div></div></div><p>We propose the following naming convention for all constraints,
with the following abbreviations taken from Oracle Docs at
<a class="ulink" href="http://oradoc.photo.net/ora81/DOC/server.815/a67779/ch4e.htm#8953" target="_top">http://oradoc.photo.net/ora81/DOC/server.815/a67779/ch4e.htm#8953</a>.
Note that we shortened all of the constraint abbrevations to two
characters to save room.</p><div class="informaltable"><table cellspacing="0" border="1">
with the following abbreviations taken from Oracle Docs. Note that
we shortened all of the constraint abbrevations to two characters
to save room.</p><div class="informaltable"><table class="informaltable" cellspacing="0" border="1">
<colgroup>
<col><col>
</colgroup><thead><tr>
......@@ -48,6 +47,8 @@ characters to save room.</p><div class="informaltable"><table cellspacing="0" bo
<td>check</td><td>ck</td>
</tr><tr>
<td>not null</td><td>nn</td>
</tr><tr>
<td>index</td><td>idx</td>
</tr>
</tbody>
</table></div>
......@@ -55,11 +56,11 @@ characters to save room.</p><div class="informaltable"><table cellspacing="0" bo
<div class="titlepage"><div><div><h3 class="title">
<a name="eng-standards-constraint-naming-format" id="eng-standards-constraint-naming-format"></a>Format of
constraint name</h3></div></div></div><p>&lt;table name&gt;_&lt;column_name&gt;_&lt;constraint
abbreviation&gt;</p><p>In reality, this won't be possible because of the character
abbreviation&gt;</p><p>In reality, this won&#39;t be possible because of the character
limitation on names inside oracle. When the name is too long, we
will follow these two steps in order:</p><div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><p>Abbreviate the table name with the table's initials (e.g. users
-&gt; u and users_contact -&gt; uc).</p></li><li class="listitem"><p>Truncate the column name until it fits.</p></li>
<li class="listitem"><p>Abbreviate the table name with the table&#39;s initials (e.g.
users -&gt; u and users_contact -&gt; uc).</p></li><li class="listitem"><p>Truncate the column name until it fits.</p></li>
</ol></div><p>If the constraint name is still too long, you should consider
rewriting your entire data model :)</p><p><span class="strong"><strong>Notes:</strong></span></p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc;">
<li class="listitem"><p>If you have to abbreviate the table name for one of the
......@@ -95,9 +96,9 @@ create table constraint_naming_example (
</pre>
</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="eng-standards-constraint-naming-pk" id="eng-standards-constraint-naming-pk"></a>Why it's good to name
<a name="eng-standards-constraint-naming-pk" id="eng-standards-constraint-naming-pk"></a>Why it&#39;s good to name
primary keys</h3></div></div></div><p>Naming primary keys might not have any obvious advantages.
However, here's an example where naming the primary key really
However, here&#39;s an example where naming the primary key really
helps (and this is by no means a rare case!</p><pre class="programlisting">
SQL&gt; set autotrace traceonly explain;
......@@ -112,19 +113,21 @@ Execution Plan
2 1 TABLE ACCESS (FULL) OF 'CONSTRAINT_NAMING_EXAMPLE'
3 1 INDEX (UNIQUE SCAN) OF 'EXAMPLE_TOPICS_TOPIC_ID_PK' (UNI
QUE)
</pre><p>Isn't it nice to see "EXAMPLE_TOPICS_TOPIC_ID_PK" in the trace
and know exactly which table oracle is using at each step?</p>
</pre><p>Isn&#39;t it nice to see "EXAMPLE_TOPICS_TOPIC_ID_PK"
in the trace and know exactly which table oracle is using at each
step?</p>
</div><div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="eng-standards-constraint-naming-nn" id="eng-standards-constraint-naming-nn"></a>Naming not null
constraints is optional...</h3></div></div></div><p>People disagree on whether or not we should be naming not null
constraints. So, if you want to name them, please do so and follow
the above naming standard. But, naming not null constraints is not
a requirement.</p><div>About Naming the not null constraints</div><p>Though naming "not null" constraints doesn't help immeditately
in error debugging (e.g. the error will say something like "Cannot
insert null value into column"), we recommend naming not null
constraints to be consistent in our naming of all constraints.</p><div class="cvstag">($&zwnj;Id: constraint-naming.xml,v 1.6 2006/07/17
05:38:37 torbenb Exp $)</div>
a requirement.</p><div>About Naming the not null constraints</div><p>Though naming "not null" constraints doesn&#39;t help
immeditately in error debugging (e.g. the error will say something
like "Cannot insert null value into column"), we
recommend naming not null constraints to be consistent in our
naming of all constraints.</p><div class="cvstag">($&zwnj;Id: constraint-naming.xml,v 1.6.14.3
2017/06/16 17:19:52 gustafn Exp $)</div>
</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
......
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 'http://www.w3.org/TR/html4/loose.dtd"'>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constraint naming standard</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter 12. Engineering Standards"><link rel="previous" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="next" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><th width="60%" align="center">Chapter 12. Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-constraint-naming"></a>Constraint naming standard</h2></div></div></div><div class="authorblurb"><p>By Michael Bryzek</p>
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>Constraint naming standard</title><link rel="stylesheet" type="text/css" href="openacs.css"><meta name="generator" content="DocBook XSL Stylesheets V1.79.1"><link rel="home" href="index.html" title="OpenACS Core Documentation"><link rel="up" href="eng-standards.html" title="Chapter 12. Engineering Standards"><link rel="previous" href="eng-standards-versioning.html" title="Release Version Numbering"><link rel="next" href="eng-standards-filenaming.html" title="ACS File Naming and Formatting Standards"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><a href="http://openacs.org"><img src="/doc/images/alex.jpg" style="border:0" alt="Alex logo"></a><table width="100%" summary="Navigation header" border="0"><tr><td width="20%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><th width="60%" align="center">Chapter 12. Engineering Standards</th><td width="20%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr></table><hr></div><div class="sect1"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="eng-standards-constraint-naming"></a>Constraint naming standard</h2></div></div></div><div class="authorblurb"><p>By Michael Bryzek</p>
OpenACS docs are written by the named authors, and may be edited
by OpenACS documentation staff.
</div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="eng-standards-constraint-naming-big-picture"></a>The Big Picture</h3></div></div></div><p>
......@@ -9,16 +9,14 @@ naming all contraints, we can quickly associate a particular constraint
with our data model. This gives us two real advantages:
</p><div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; "><li class="listitem"><p> We can quickly identify and fix any errors. </p></li><li class="listitem"><p> We can reliabily modify or drop constraints </p></li></ul></div><p>
</p><div>Why do we need a naming convention? </div><p>
<a class="ulink" href="http://oradoc.photo.net/ora8doc/DOC/server803/A54647_01/ch2.htm#2956" target="_top">Oracle limits names</a>,
<a class="ulink" href="https://docs.oracle.com/database/121/SQLRF/sql_elements008.htm#SQLRF00223" target="_top">Oracle limits names</a>,
in general, to 30 characters, which is hardly enough for a human readable constraint name.
</p></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="eng-standards-constraint-naming-abbr"></a>Abbreviations</h3></div></div></div><p>
We propose the following naming convention for all constraints, with
the following abbreviations taken from Oracle Docs at
<a class="ulink" href="http://oradoc.photo.net/ora81/DOC/server.815/a67779/ch4e.htm#8953" target="_top">
http://oradoc.photo.net/ora81/DOC/server.815/a67779/ch4e.htm#8953</a>.
the following abbreviations taken from Oracle Docs.
Note that we shortened all of the constraint abbrevations to
two characters to save room.
</p><div class="informaltable"><table cellspacing="0" border="1"><colgroup><col><col></colgroup><thead><tr><th>Constraint type</th><th>Abbreviation</th></tr></thead><tbody><tr><td>references (foreign key)</td><td>fk</td></tr><tr><td>unique</td><td>un</td></tr><tr><td>primary key</td><td>pk</td></tr><tr><td>check</td><td>ck</td></tr><tr><td>not null</td><td>nn</td></tr></tbody></table></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="eng-standards-constraint-naming-format"></a>Format of constraint name</h3></div></div></div><p>
</p><div class="informaltable"><table class="informaltable" cellspacing="0" border="1"><colgroup><col><col></colgroup><thead><tr><th>Constraint type</th><th>Abbreviation</th></tr></thead><tbody><tr><td>references (foreign key)</td><td>fk</td></tr><tr><td>unique</td><td>un</td></tr><tr><td>primary key</td><td>pk</td></tr><tr><td>check</td><td>ck</td></tr><tr><td>not null</td><td>nn</td></tr><tr><td>index</td><td>idx</td></tr></tbody></table></div></div><div class="sect2"><div class="titlepage"><div><div><h3 class="title"><a name="eng-standards-constraint-naming-format"></a>Format of constraint name</h3></div></div></div><p>
&lt;table name&gt;_&lt;column_name&gt;_&lt;constraint abbreviation&gt;
</p><p>
In reality, this won't be possible because of the character limitation on
......@@ -85,4 +83,4 @@ Though naming "not null" constraints doesn't help immeditately in error
debugging (e.g. the error will say something like
"Cannot insert null value into column"), we recommend naming not null
constraints to be consistent in our naming of all constraints.
</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr><tr><td width="40%" align="left">Release Version Numbering </td><td width="20%" align="center"><a accesskey="u" href="eng-standards.html">Up</a></td><td width="40%" align="right"> ACS File Naming and Formatting Standards</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a><center><a href="http://openacs.org/doc/current/eng-standards-constraint-naming.html#comments">View comments on this page at openacs.org</a></center></body></html>
</p><div class="cvstag">($Id$)</div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="eng-standards-versioning.html">Prev</a> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right"> <a accesskey="n" href="eng-standards-filenaming.html">Next</a></td></tr><tr><td width="40%" align="left">Release Version Numbering </td><td width="20%" align="center"><a accesskey="u" href="eng-standards.html">Up</a></td><td width="40%" align="right"> ACS File Naming and Formatting Standards</td></tr></table><hr><address><a href="mailto:docs@openacs.org">docs@openacs.org</a></address></div><a name="comments"></a></body></html>
This diff is collapsed.
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {PL/SQL Standards}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {PL/SQL Standards}</property>
<property name="doc(title)">PL/SQL Standards</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -25,8 +25,8 @@ achieve this goal:</p><div class="sect2">
is maintainable by others, this is especially true in our case
because we are building an open source toolkit than anyone can
download and browse the source code. So document like you are
trying to impress your "Introduction to Programming" professor or
TA.</p></li><li class="listitem"><p>It is important to be consistent throughout an application as
trying to impress your "Introduction to Programming"
professor or TA.</p></li><li class="listitem"><p>It is important to be consistent throughout an application as
much as is possible given the nature of team development. This
means carrying style and other conventions suchs as naming within
an application, not just within one file.</p></li>
......@@ -36,7 +36,7 @@ an application, not just within one file.</p></li>
<a name="eng-standards-plsql-code" id="eng-standards-plsql-code"></a>Code</h3></div></div></div><div class="orderedlist"><ol class="orderedlist" type="1">
<li class="listitem"><p>Encapsulation of related fuctionality is key to maintainability
and upgradeability of our software. Try to bundle your code into
<a class="ulink" href="http://oradoc.photo.net/ora816/appdev.816/a77069/08_packs.htm#4376" target="_top">packages</a> whenever possible. This will make
<a class="ulink" href="https://docs.oracle.com/database/121/LNPLS/packages.htm#LNPLS009" target="_top">packages</a> whenever possible. This will make
upgrading, bug fixing, and customizing, among other things, a
possibility.</p></li><li class="listitem">
<p>When creating functions or procedures use the following
......@@ -69,12 +69,13 @@ upgrading or fixing a bug.</p></li><li class="listitem"><p>Always qualify <code
statements, i.e., the <code class="computeroutput">end</code>
statement for a package should be <code class="computeroutput">end
&lt;package_name&gt;;</code>, not just <code class="computeroutput">end;</code>; same goes for procedures, functions,
package bodies, and triggers.</p></li><li class="listitem"><p>Always use the "show errors" SQL*Plus command after each PL/SQL
block. It will help you debug when there are compilation errors in
your PL/SQL code.</p></li><li class="listitem">
package bodies, and triggers.</p></li><li class="listitem"><p>Always use the "show errors" SQL*Plus command after
each PL/SQL block. It will help you debug when there are
compilation errors in your PL/SQL code.</p></li><li class="listitem">
<p>Name parameters as simply as possible, i.e., use the column name
if the parameter corresponds to a table column. We're deprecating
the v_* and *_in syntax in favor of named parameters notation:</p><pre class="programlisting">
if the parameter corresponds to a table column. We&#39;re
deprecating the v_* and *_in syntax in favor of named parameters
notation:</p><pre class="programlisting">
<code class="computeroutput">
acs_user.create(first_names =&gt; 'Jane', last_name =&gt; 'Doe', etc.)
</code>
......@@ -82,7 +83,7 @@ the v_* and *_in syntax in favor of named parameters notation:</p><pre class="pr
<code class="computeroutput">
acs_user.create(first_names_in =&gt; 'Jane', last_name_in =&gt; 'Doe', etc.)
</code>
</pre><p>To achieve this we must fully qualify arguements passed into
</pre><p>To achieve this we must fully qualify arguments passed into
procedures or functions when using them inside a SQL statement.
This will get rid of any ambiguities in your code, i.e. it will
tell the parser when you want the value of the column and when you
......@@ -107,11 +108,12 @@ want the value from the local variable. Here is an example:</p><pre class="progr
show errors
</pre>
</li><li class="listitem"><p>Explicitly designate each parameter as "in," "out," or
"inout."</p></li><li class="listitem"><p>Each parameter should be on its own line, with a tab after the
</li><li class="listitem"><p>Explicitly designate each parameter as "in,"
"out," or "inout."</p></li><li class="listitem"><p>Each parameter should be on its own line, with a tab after the
parameter name, then in/out/inout, then a space, and finally the
datatype.</p></li><li class="listitem"><p>Use %TYPE and %ROWTYPE whenever possible.</p></li><li class="listitem"><p>Use 't' and 'f' for booleans, not the PL/SQL "boolean" datatype
because it can't be used in SQL queries.</p></li><li class="listitem">
datatype.</p></li><li class="listitem"><p>Use %TYPE and %ROWTYPE whenever possible.</p></li><li class="listitem"><p>Use 't' and 'f' for booleans, not the PL/SQL
"boolean" datatype because it can&#39;t be used in SQL
queries.</p></li><li class="listitem">
<p>All <code class="computeroutput">new</code> functions (e.g.,
<code class="computeroutput">acs_object.new, party.new,</code>
etc.) should optionally accept an ID:</p><pre class="programlisting"><code class="computeroutput">
......@@ -127,7 +129,7 @@ etc.) should optionally accept an ID:</p><pre class="programlisting"><code class
) return acs_objects.object_id%TYPE;
</code></pre><p>takes the optional argument <code class="computeroutput">object_id</code>. Do this to allow people to use
the same API call when they are doing double click protection, that
is, tehy have already gotten an <code class="computeroutput">object_id</code> and now they want to create the
is, they have already gotten an <code class="computeroutput">object_id</code> and now they want to create the
object with that <code class="computeroutput">object_id</code>.</p>
</li>
</ol></div>
......@@ -140,8 +142,8 @@ viewable in the SQL files but also through our SQL and PL/SQL
browsers. This means that we should try to make it as consistent as
possible to all source code readers.</p></li><li class="listitem"><p>Lowercase everything, with the exception of %TYPE and
%ROWTYPE.</p></li>
</ol></div><div class="cvstag">($&zwnj;Id: plsql.xml,v 1.6 2006/07/17 05:38:37
torbenb Exp $)</div>
</ol></div><div class="cvstag">($&zwnj;Id: plsql.xml,v 1.6.14.3 2017/06/16 17:19:52
gustafn Exp $)</div>
</div>
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {Chapter 12. Engineering
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {Chapter 12. Engineering
Standards}</property>
<property name="doc(title)">Chapter 12. Engineering
Standards</property>
......@@ -14,7 +14,7 @@ Developers"
<div class="titlepage"><div><div><h2 class="title">
<a name="eng-standards" id="eng-standards"></a>Chapter 12. Engineering
Standards</h2></div></div></div><div class="toc">
<p><b>Table of Contents</b></p><dl class="toc">
<p><strong>Table of Contents</strong></p><dl class="toc">
<dt><span class="sect1"><a href="style-guide">OpenACS Style
Guide</a></span></dt><dt><span class="sect1"><a href="cvs-guidelines">CVS
Guidelines</a></span></dt><dt><span class="sect1"><a href="eng-standards-versioning">Release Version
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -31,14 +31,14 @@ proc acs_pgbackup {} {
ns_log Notice "Backup of [ad_system_name] starting."
ns_log Notice "pg_dump beginning..."
if [catch {append msg [exec pg_dump "-U" "$pguser" "$servername" ">$bak/$data"]} errmsg] {
if [catch {append msg [exec "pg_dump" "-U" "$pguser" "$servername" ">$bak/$data"]} errmsg] {
ns_log Error "pg_dump failed: $errmsg"
ns_sendmail [ad_system_owner] [ad_system_owner] "[ad_system_name] : pg_dump failed..." "$errmsg"
return
}
append msg "\n"
ns_log Notice "gzip of data beginning..."
if [catch {append msg [exec gzip "-f" "$bak/$data"]} errmsg] {
if [catch {append msg [exec "gzip" "-f" "$bak/$data"]} errmsg] {
ns_log Error "gzip of data failed: $errmsg"
ns_sendmail [ad_system_owner] [ad_system_owner] "[ad_system_name] : gzip of data failed..." "$errmsg"
return
......@@ -49,7 +49,7 @@ proc acs_pgbackup {} {
puts $fd "user $ftp_user ${ftp_password}\nbinary\nput $bak/$data.gz ${ftp_dir}/$data.gz\nquit\n"
close $fd
if [catch {append msg [exec ftp "-n" $ftp_server "<$bak/ftp_data.tmp"]} errmsg] {
if [catch {append msg [exec "ftp" "-n" $ftp_server "<$bak/ftp_data.tmp"]} errmsg] {
ns_log Error "ftp data failed: $errmsg"
ns_sendmail [ad_system_owner] [ad_system_owner] "[ad_system_name] : ftp data failed..." "$errmsg"
return
......@@ -58,7 +58,7 @@ proc acs_pgbackup {} {
# Replicate the above code to make remote copies to other systems
ns_log Notice "vacuum beginning..."
if [catch {append msg [exec vacuumdb "-U" "$pguser" "-q" "-z" "$servername"]} errmsg] {
if [catch {append msg [exec "vacuumdb" "-U" "$pguser" "-q" "-z" "$servername"]} errmsg] {
ns_log Error "vacuum failed: $errmsg"
ns_sendmail [ad_system_owner] [ad_system_owner] "[ad_system_name] : vacuum failed..." "$errmsg"
}
......
<property name="context">{/doc/acs-core-docs {Documentation}} {ACS Installation: Welcome}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {ACS Installation: Welcome}</property>
<property name="doc(title)">ACS Installation: Welcome</property>
<master>
<h2>ACS Installation: Welcome</h2>
Thank you for installing the ArsDigita Community System, a suite of
fully-integrated enterprise-class applications for supporting
<i>purposeful</i>
<em>purposeful</em>
online communities. This is the ACS Installer
which performs all the steps necessary to get the ArsDigita
Community System running on your server.
<p>Your Oracle driver is correctly installed and configured.</p>
<p>The next step is to install the ACS kernel data model. Click the
<i>Next</i> button to proceed.</p>
<em>Next</em> button to proceed.</p>
<form action="install-data-model" method="get">
<center><input type="submit" value="Next -&gt;"></center><hr><a href="mailto:acs\@arsdigita.com"></a><address>acs\@arsdigita.com</address>
</form>
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {My Space - SloanSpace}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {My Space - SloanSpace}</property>
<property name="doc(title)">My Space - SloanSpace</property>
<master>
<ul id="breadcrumbs">
......@@ -33,7 +33,7 @@
<div class="portlet">
<h2>Latest News</h2><h3>MBA 101</h3><ul>
<li>
<a href="#">Here's what we have to say</a><p class="poster">Posted by Anders Pollas on May 21 2004</p>
<a href="#">Here&#39;s what we have to say</a><p class="poster">Posted by Anders Pollas on May 21 2004</p>
</li><li>
<a href="#">Another subject</a><p class="poster">Posted by Anders Pollas on May 17 2004</p>
</li>
......
......@@ -248,7 +248,7 @@ no-repeat;
}
/* IE 6 Hack - see http://css-discuss.incutio.com/?page=StarHtmlHack */
/* We can't find a way to make drop-shadows work on IE 6 */
/* We can&#39;t find a way to make drop-shadows work on IE 6 */
* html .portlet-wrap-shadow {
background: none;
}
......@@ -464,7 +464,7 @@ no-repeat;
<ul>
<li>
<a href="#">Here's what we have to say</a>
<a href="#">Here&#39;s what we have to say</a>
<p class="poster">Posted by Anders Pollas on May
21 2004</p>
</li>
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
......@@ -16,7 +16,7 @@ ad_proc -public mfp::note::get {
} {
This proc retrieves a note. This is annoying code that is only
here because we wanted to give you a working tutorial in 5.0 that
uses content repository, but the tcl api for content repository
uses content repository, but the Tcl api for content repository
won't be complete until 5.1. At least we can use the pregenerated views for select and edit.
} {
upvar 1 $array row
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
<property name="context">{/doc/acs-core-docs {Documentation}} {High Availability/High Performance Configurations}</property>
<property name="context">{/doc/acs-core-docs {ACS Core Documentation}} {High Availability/High Performance Configurations}</property>
<property name="doc(title)">High Availability/High Performance Configurations</property>
<master>
<include src="/packages/acs-core-docs/lib/navheader"
......@@ -13,8 +13,8 @@ Chapter 6. Production Environments"
Configurations</h2></div></div></div><p>See also <a class="xref" href="remote-postgres" title="Running a PostgreSQL database on another server">the section
called &ldquo;Running a PostgreSQL database on another
server&rdquo;</a>.</p><div class="figure">
<a name="idp140400237699664" id="idp140400237699664"></a><p class="title"><b>Figure 6.1. Multiple-server
configuration</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/hpha.png" align="middle" alt="Multiple-server configuration"></div></div>
<a name="idp140592101868456" id="idp140592101868456"></a><p class="title"><strong>Figure 6.1. Multiple-server
configuration</strong></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/hpha.png" align="middle" alt="Multiple-server configuration"></div></div>
</div><br class="figure-break">
</div>
<include src="/packages/acs-core-docs/lib/navfooter"
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment