You are viewing a plain text version of this content. The canonical link for it is here.
Posted to site-cvs@tcl.apache.org by mx...@apache.org on 2012/12/03 02:16:32 UTC
svn commit: r1416329 [7/7] - in /tcl/site/rivet/manual2.1: ./ images/
Added: tcl/site/rivet/manual2.1/session_package.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/session_package.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/session_package.html (added)
+++ tcl/site/rivet/manual2.1/session_package.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,184 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Session Package</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="index.html" title="Apache Rivet"><link rel="prev" href="diodisplay_package.html" title="DIODisplay"><link rel="next" href="form.html" title="Form: An HTML Form Fields Generation Utility"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Session Package</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="diodisplay_package.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="form.html"><img src="images/next.png" alt="Next
"></a></td></tr></table></div><div class="section" title="Session Package"><div class="titlepage"><div><div><hr><h2 class="title" style="clear: both"><a name="session_package"></a>Session Package</h2></div></div></div><div class="section" title="Introduction"><div class="titlepage"><div><div><h3 class="title"><a name="idp7725440"></a>Introduction</h3></div></div></div><p style="width:90%">
+ This is session management code. It provides an interface
+ to allow you to generate and track a browser's visit as a
+ "session", giving you a unique session ID and an interface
+ for storing and retrieving data for that session on the
+ server.
+ </p><p style="width:90%">
+ This is an alpha/beta release -- documentation is not in
+ final form, but everything you need should be in this file.
+ </p><p style="width:90%">
+ Using sessions and their included ability to store and
+ retrieve session-related data on the server, programmers can
+ generate more secure and higher-performance websites. For
+ example, hidden fields do not have to be included in forms
+ (and the risk of them being manipulated by the user
+ mitigated) since data that would be stored in hidden fields
+ can now be stored in the session cache on the server. Forms
+ are then faster since no hidden data is transmitted --
+ hidden fields must be sent twice, once in the form to the
+ broswer and once in the response from it.
+ </p><p style="width:90%">
+ Robust login systems, etc, can be built on top of this code.
+ </p></div><div class="section" title="Requirements"><div class="titlepage"><div><div><h3 class="title"><a name="requirements"></a>Requirements</h3></div></div></div><p style="width:90%">
+ Currently has only been tested with Postgresql, MySql and Oracle.
+ All DB interfacing is done through DIO, though, so it
+ should be relatively easy to add support for other
+ databases.
+ </p></div><div class="section" title="Preparing To Use It"><div class="titlepage"><div><div><h3 class="title"><a name="idp7773840"></a>Preparing To Use It</h3></div></div></div><p style="width:90%">Create the tables in your SQL server. With Postgres,
+ do a <span style="font-family:monospace"><span class="command"><strong>psql www</strong></span></span> or whatever DB you
+ connect as, then a backslash-i on
+ <code class="filename">session-create.sql</code></p><p style="width:90%">(If you need to delete the tables, use <code class="filename">session-drop.sql</code>)</p><p style="width:90%">The session code by default requires a DIO handle
+ called <code class="varname">DIO</code> (the name of which can be
+ overridden). We get it by doing a</p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">
+ RivetServerConf ChildInitScript "package require DIO"
+ RivetServerConf ChildInitScript "::DIO::handle Postgresql DIO -user www"
+ </pre></div><div class="section" title="Example Usage"><div class="titlepage"><div><div><h3 class="title"><a name="idp7779296"></a>Example Usage</h3></div></div></div><p style="width:90%">In your httpd.conf, add:</p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">RivetServerConf ChildInitScript "package require Session; Session SESSION"</pre><p style="width:90%">
+ This tells Rivet you want to create a session object named
+ SESSION in every child process Apache creates.</p><p style="width:90%">
+ You can configure the session at this point using numerous
+ key-value pairs (which are defined later in this doc).
+ Here's a quick example:</p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">RivetServerConf ChildInitScript "package require Session; Session SESSION \
+ -cookieLifetime 120 -debugMode 1"</pre><p style="width:90%">
+ Turn debugging on -debugMode 1 to figure
+ out what's going on -- it's really useful, if
+ verbose.</p><p style="width:90%">
+ In your .rvt file, when you're generating the <HEAD>
+ section:
+ </p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">SESSION activate</pre><p style="width:90%">
+ Activate handles everything for you with respect to
+ creating new sessions, and for locating, validating, and
+ updating existing sessions. Activate will either locate
+ an existing session, or create a new one. Sessions will
+ automatically be refreshed (their lifetimes extended) as
+ additional requests are received during the session, all
+ under the control of the key-value pairs controlling the
+ session object.
+ </p></div><div class="section" title="Using Sessions From Your Code"><div class="titlepage"><div><div><h3 class="title"><a name="idp7786048"></a>Using Sessions From Your Code</h3></div></div></div><p style="width:90%">The main methods your code will use are:</p><div class="variablelist"><dl><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION</span> <span style="font-weight:bold ; font-family:monospace">id</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ After doing a <span style="font-family:monospace"><span class="command"><strong>SESSION activate</strong></span></span>,
+ this will return a 32-byte ASCII-encoded random
+ hexadecimal string. Every time this browser comes
+ to us with a request within the timeout period, this
+ same string will be returned (assuming they have
+ cookies enabled).
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION</span> <span style="font-weight:bold ; font-family:monospace">is_new_session</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">returns 1 if it's a new session or 0 if it has
+ previously existed (i.e. it's a zero if this request
+ represents a "return" or subsequent visit to a
+ current session.)</div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION new_session_reason</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ This will return why this request is the first
+ request of a new session, either "no_cookie" saying
+ the browser didn't give us a session cookie,
+ "no_session" indicating we got a cookie but couldn't
+ find it in our session table, or "timeout" where
+ they had a cookie and we found the matching session
+ but the session has timed out.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION store</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>packageName</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>key</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>data</code></em></span>?</div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Given the name of a package, a key, and some data.
+ Stores the data in the rivet session cache table.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION fetch</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>packageName</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>key</code></em></span>?</div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Given a package name and a key, return the data
+ stored by the store method, or an empty string if
+ none was set. (Status is set to the DIO error that
+ occurred, it can be fetched using the status
+ method.)
+ </div></div></dd></dl></div></div><div class="section" title="Session Configuration Options"><div class="titlepage"><div><div><h3 class="title"><a name="idp7809712"></a>Session Configuration Options</h3></div></div></div><p style="width:90%">The following key-value pairs can be specified when a
+ session object (like SESSION above) is created:</p><div class="variablelist"><dl><dt><span class="term">sessionLifetime</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">how many seconds the session will live for.
+ 7200 == 2 hours
+ </div></div></dd><dt><span class="term">sessionRefreshInterval</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ If a request is processed for a browser that
+ currently has a session and this long has elapsed
+ since the session update time was last updated,
+ update it. 900 == 15 minutes. so if at least 15
+ minutes has elapsed and we've gotten a new request
+ for a page, update the session update time,
+ extending the session lifetime (sessions that are in
+ use keep getting extended).
+ </div></div></dd><dt><span class="term">cookieName</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex"></div>
+ name of the cookie stored on the user's web browser
+ default rivetSession
+ </div></dd><dt><span class="term">dioObject</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ The name of the DIO object we'll use to access the
+ database (default DIO)
+ </div></div></dd><dt><span class="term">gcProbability</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ The probability that garbage collection will occur
+ in percent. (default 1%, i.e. 1)</div></div></dd><dt><span class="term">gcMaxLifetime</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">the number of seconds after which
+ data will be seen as "garbage" and cleaned up --
+ defaults to 1 day (86400)</div></div></dd><dt><span class="term">refererCheck</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The substring you want to check each
+ HTTP referer for. If the referer was sent by the
+ browser and the substring is not found, the session
+ will be deleted. (not coded yet)</div></div></dd><dt><span class="term">entropyFile</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The
+ name of a file that random binary data can be read
+ from. (<code class="filename">/dev/urandom</code>) Data will
+ be used from this file to help generate a
+ super-hard-to-guess session ID.</div></div></dd><dt><span class="term">entropyLength</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The number of bytes which will be
+ read from the entropy file. If 0, the entropy file
+ will not be read (default 0)</div></div></dd><dt><span class="term">scrambleCode</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Set the scramble code to something unique for the
+ site or your app or whatever, to slightly increase
+ the unguessability of session ids (default "some
+ random string")</div></div></dd><dt><span class="term">cookieLifetime</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The lifetime of the cookie in
+ minutes. 0 means until the browser is closed (I
+ think). (default 0)</div></div></dd><dt><span class="term">cookiePath</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The
+ webserver subpath that the session cookie applies to
+ (defaults to
+ <code class="filename">/</code>)</div></div></dd><dt><span class="term">cookieSecure</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">Specifies whether the cookie should
+ only be sent over secure connections, 0 = any, 1 =
+ secure connections only (default
+ 0)</div></div></dd><dt><span class="term">sessionTable</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The name of the table that session
+ info will be stored in (default
+ <code class="varname">rivet_session</code>)</div></div></dd><dt><span class="term">sessionCacheTable</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The name of the table that contains
+ cached session data (default
+ <code class="varname">rivet_session_cache</code>)</div></div></dd><dt><span class="term">debugMode</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">Set
+ debug mode to 1 to trace through and see the session
+ object do its thing (default 0)</div></div></dd><dt><span class="term">debugFile</span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">The
+ file handle that debugging messages will be written
+ to (default
+ <code class="varname">stdout</code>)
+ </div></div></dd></dl></div></div><div class="section" title="Session Methods"><div class="titlepage"><div><div><h3 class="title"><a name="idp7837056"></a>Session Methods</h3></div></div></div><p style="width:90%">
+ The following methods can be invoked to find out
+ information about the current session, store and fetch
+ server data identified with this session, etc:
+ </p><div class="variablelist"><dl><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION status</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Return the status of the last operation
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION id</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Get the session ID of the current browser. Returns
+ an empty string if there's no session (will not
+ happen is SESSION activate has been issued.)
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION new_session_reason</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the reason why there wasn't a previous
+ session, either "no_cookie" saying the browser
+ didn't give us a session cookie, "no_session"
+ indicating we got a cookie but couldn't find it in
+ the session table, or "timeout" when we had a cookie
+ and a session but the session had timed out.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION store</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>packageName</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>key</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>data</code></em></span>?</div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Given a package name, a key string, and a data
+ string, store the data in the rivet session
+ cache.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION fetch</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>packageName</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>key</code></em></span>?</div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Given a package name and a key, return the data
+ stored by the store method, or an empty string if
+ none was set. Status is set to the DIO error that
+ occurred, it can be fetched using the status
+ method.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION delete</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Given a user ID and looking at their IP address we
+ inherited from the environment (thanks, Apache),
+ remove them from the session table. (the session
+ table is how the server remembers stuff about
+ sessions). If the session ID was not specified the
+ current session is deleted.
+ </div></div></dd><dt><span class="term"></span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">SESSION activate</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Find and validate the session ID if they have one.
+ If they don't have one or it isn't valid (timed out,
+ etc), create a session and drop a cookie on
+ them.
+ </div></div></dd></dl></div></div><div class="section" title="Getting Additional Randomness From The Entropy File"><div class="titlepage"><div><div><h3 class="title"><a name="idp7864112"></a>Getting Additional Randomness From The Entropy File</h3></div></div></div><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">RivetServerConf ChildInitScript "Session SESSION -entropyFile /dev/urandom \
+ -entropyLength 10 -debugMode 1"</pre><p style="width:90%">
+ This options say we want to get randomness from an entropy
+ file (random data pseudo-device) of /dev/urandom, to get ten
+ bytes of random data from that entropy device, and to turn
+ on debug mode, which will cause the SESSION object to output
+ all manner of debugging information as it does stuff. This
+ has been tested on FreeBSD and appears to work.
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="diodisplay_package.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="form.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">DIODisplay </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> Form: An HTML Form Fields Generation Utility</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/shorthand.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/shorthand.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/shorthand.html (added)
+++ tcl/site/rivet/manual2.1/shorthand.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,13 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title><?= ... ?></title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="next" href="abort_code.html" title="abort_code"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><?= ... ?></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="commands.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="abort_code.html"><
img src="images/next.png" alt="Next"></a></td></tr></table></div><div class="refentry" title="<?= ... ?>"><a name="shorthand"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p><?= ... ?> —
+ Shorthand construct for single strings output
+ </p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace"><?= <span style="font-family:monospace; font-weight: bold;">$string</span> ?></span> </div></div></div><div class="refsect1" title="Description"><a name="idp5195680"></a><h2>Description</h2><p style="width:90%">
+ This construct is a simplified form to print a single string wherever
+ needed in a ?<span style="font-family:monospace; font-weight: bold;">.rvt</span>? template. The contruct is equivalent to
+ writing the following line of Tcl code
+ </p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">put -nonewline $string</pre><p style="width:90%">
+ The ?<span style="font-family:monospace; font-weight: bold;">string</span>? argument to the shorthand construct can
+ be any Tcl command returning a value
+ </p><p style="width:90%">
+ See <a class="xref" href="examples.html#hello_world" title="Example 1. Hello World">Example 1, “Hello World”</a> or
+ <a class="xref" href="examples.html#variable_access" title="Example 3. Variable Access">Example 3, “Variable Access”</a>
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="commands.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="abort_code.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">Rivet Tcl Commands and Variables </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> abort_code</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/tcl_packages.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/tcl_packages.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/tcl_packages.html (added)
+++ tcl/site/rivet/manual2.1/tcl_packages.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,11 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Rivet Tcl Packages</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="index.html" title="Apache Rivet"><link rel="prev" href="examples.html" title="Examples and Usage"><link rel="next" href="dio.html" title="DIO - Database Interface Objects"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Rivet Tcl Packages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="examples.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="dio.html"><img src="images/next.png" alt="Next"></a></td></tr></ta
ble></div><div class="section" title="Rivet Tcl Packages"><div class="titlepage"><div><div><hr><h2 class="title" style="clear: both"><a name="tcl_packages"></a>Rivet Tcl Packages</h2></div></div></div><p style="width:90%">
+ In addition to the core Apache module, Rivet provides a number
+ of Tcl packages that include potentially useful code.
+ </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
+ commserver is a package providing a server that can be
+ used for IPC. Still experimental. Requires the comm package
+ from tcllib.
+ </div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">dio is a database abstraction layer.</div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">
+ dtcl is a compatibility package for mod_dtcl
+ applications.
+ </div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">form - for creating forms.</div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">rivet - some additional, useful routines.</div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">tclrivet</div></li><li class="listitem"><div style="margin-bottom:1.5ex ; padding .5ex">calendar - a package providing a simple configurable calendar generator</div></li></ul></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="examples.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="dio.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">Examples and Usage </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img
src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> DIO - Database Interface Objects</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/unescape_string.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/unescape_string.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/unescape_string.html (added)
+++ tcl/site/rivet/manual2.1/unescape_string.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,10 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>unescape_string</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="read_file.html" title="read_file"><link rel="next" href="upload.html" title="upload"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">unescape_string</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="read_file.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="upload.html"><img src="images/next.png" alt="Next
"></a></td></tr></table></div><div class="refentry" title="unescape_string"><div class="refentry.separator"><hr></div><a name="unescape_string"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>unescape_string — unescape escaped characters in a string.</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::unescape_string</span> ?<span style="font-family:monospace; font-weight: bold;">string</span>?</div></div></div><div class="refsect1" title="Description"><a name="idp5558560"></a><h2>Description</h2><p style="width:90%">
+ Scans through each character in the specified string looking
+ for escaped character sequences (characters containing a
+ percent sign and two hexadecimal characters, unescaping them
+ back to their original character values, as needed, also mapping
+ plus signs to spaces, and returning the result.
+ </p><p style="width:90%">
+ This is useful for unquoting strings that have been quoted to
+ be part of a URL.
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="read_file.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="upload.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">read_file </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> upload</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/upgrading.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/upgrading.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/upgrading.html (added)
+++ tcl/site/rivet/manual2.1/upgrading.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,12 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>Upgrading from mod_dtcl or NeoWebScript</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="index.html" title="Apache Rivet"><link rel="prev" href="internals.html" title="Rivet Internals"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Upgrading from mod_dtcl or NeoWebScript</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="internals.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> </td></tr></table></div><div class="section" title="Upgrading from mod_dtcl or NeoWebScript"><div class="titlepage"><div><
div><hr><h2 class="title" style="clear: both"><a name="upgrading"></a>Upgrading from mod_dtcl or NeoWebScript</h2></div></div></div><p style="width:90%">
+ Rivet is a break from the past, in that we, the authors, have
+ attempted to take what we like best about our past efforts, and
+ leave out or change things we no longer care for. Backwards
+ compatibility was not a primary goal when creating Rivet, but we
+ do provide this information which may be of use to those wishing
+ to upgrade from mod_dtcl or NWS installations.
+ </p><div class="section" title="mod_dtcl"><div class="titlepage"><div><div><h3 class="title"><a name="idp8901376"></a>mod_dtcl</h3></div></div></div><p style="width:90%">
+ Rivet was originally based on the dtcl code, but it has
+ changed (improved!) quite a bit. The concepts remain the
+ same, but many of the commands have changed.
+ </p></div><div class="section" title="NeoWebScript"><div class="titlepage"><div><div><h3 class="title"><a name="idp8902720"></a>NeoWebScript</h3></div></div></div><p style="width:90%">TODO</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="internals.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left" valign="top">Rivet Internals </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/upload.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/upload.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/upload.html (added)
+++ tcl/site/rivet/manual2.1/upload.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,53 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>upload</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="unescape_string.html" title="unescape_string"><link rel="next" href="var.html" title="var"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">upload</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="unescape_string.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="var.html"><img src="images/next.png" alt="Next"></a></t
d></tr></table></div><div class="refentry" title="upload"><div class="refentry.separator"><hr></div><a name="upload"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>upload — handle a file uploaded by a client.</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> (<span style="font-family:monospace; font-weight: bold;">channel</span> | <span style="font-family:monospace; font-weight: bold;">save</span> | <span style="font-family:monospace; font-weight: bold;">data</span> | <span style="font-family:monospace; font-weight: bold;">exists</span> | <span style="font-family:monospace; font-weight: bold;">size</span> | <span style="font-family:monospace; font-weight: bold;">type</span> | <span style="font-family:mo
nospace; font-weight: bold;">filename</span>)</div></div></div><div class="refsect1" title="Description"><a name="idp5571280"></a><h2>Description</h2><p style="width:90%">
+ The upload command is for file upload manipulation.
+ See the relevant Apache Directives to further configure the
+ behavior of this Rivet feature.
+ </p><div class="variablelist"><dl><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">channel</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ When given the name of a file upload
+ <em class="replaceable"><code>uploadname</code></em>,
+ returns a Tcl channel that can be used to access the
+ uploaded file.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">save</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>filename</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Saves the <em class="replaceable"><code>uploadname</code></em> in
+ the file <em class="replaceable"><code>filename</code></em>.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">data</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns data uploaded to the server. This is binary clean
+ - in other words, it will work even with files like
+ images, executables, compressed files, and so on.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">exists</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns true if an upload named ?<span style="font-family:monospace; font-weight: bold;">uploadname</span>?
+ exists. This can be used in scripts that are meant to
+ be run by different forms that send over uploads that
+ might need specific processing.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">size</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the size of the file uploaded.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">type</span> </div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ If the <code class="varname">Content-type</code> is set, it is
+ returned, otherwise, an empty string.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">filename</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the filename on the remote host that uploaded the file.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">tempname</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>uploadname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the name of the temporary file on the local host that the file was uploaded into.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::upload</span> <span style="font-family:monospace; font-weight: bold;">names</span> </div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the variable names, as a list, of all the files uploaded.
+ </div></div></dd></dl></div><p style="width:90%">
+ See <a class="xref" href="examples.html#file_upload" title="Example 4. File Upload">Example 4, “File Upload”</a>.
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="unescape_string.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="var.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">unescape_string </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> var</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/var.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/var.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/var.html (added)
+++ tcl/site/rivet/manual2.1/var.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,45 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>var</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="upload.html" title="upload"><link rel="next" href="wrap.html" title="wrap"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">var</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="upload.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="wrap.html"><img src="images/next.png" alt="Next"></a></td></tr></table></div><div clas
s="refentry" title="var"><div class="refentry.separator"><hr></div><a name="var"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>var, var_qs, var_post — get the value of a form variable.</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> (<span style="font-family:monospace; font-weight: bold;">get</span> | <span style="font-family:monospace; font-weight: bold;">list</span> | <span style="font-family:monospace; font-weight: bold;">exists</span> | <span style="font-family:monospace; font-weight: bold;">number</span> | <span style="font-family:monospace; font-weight: bold;">all</span>)</div></div><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left:
0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var_qs</span> (<span style="font-family:monospace; font-weight: bold;">get</span> | <span style="font-family:monospace; font-weight: bold;">list</span> | <span style="font-family:monospace; font-weight: bold;">exists</span> | <span style="font-family:monospace; font-weight: bold;">number</span> | <span style="font-family:monospace; font-weight: bold;">all</span>)</div></div><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var_post</span> (<span style="font-family:monospace; font-weight: bold;">get</span> | <span style="font-family:monospace; font-weight: bold;">list</span> | <span style="font-family:monospace; font-weight: bold;">exists</span> | <span style="font-family:monospace; font-weight: bold;">number</span> | <span st
yle="font-family:monospace; font-weight: bold;">all</span>)</div></div></div><div class="refsect1" title="Description"><a name="idp5640512"></a><h2>Description</h2><p style="width:90%">
+ The <span style="font-family:monospace"><span class="command"><strong>var</strong></span></span> command retrieves information
+ about GET or POST variables sent to the script via client
+ request. It treats both GET and POST variables the same,
+ regardless of their origin. Note that there are two
+ additional forms of <span style="font-family:monospace"><span class="command"><strong>::rivet::var</strong></span></span>:
+ <span style="font-family:monospace"><span class="command"><strong>rivet::var_qs</strong></span></span> and
+ <span style="font-family:monospace"><span class="command"><strong>::rivet::var_post</strong></span></span>.
+ These two restrict the retrieval of information to
+ parameters arriving via the querystring
+ (?foo=bar&bee=bop) or POSTing, respectively.
+ </p><div class="variablelist"><dl><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> <span style="font-family:monospace; font-weight: bold;">get</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>varname</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>?<span class="optional">default</span>?</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the value of variable
+ <em class="replaceable"><code>varname</code></em>
+ as a string (even if there are multiple values). If
+ the variable doesn't exist as a GET or POST
+ variable, the
+ <em class="replaceable"><code>?<span class="optional">default</span>?</code></em>
+ value is returned, otherwise "" - an empty string -
+ is returned.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> <span style="font-family:monospace; font-weight: bold;">list</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>varname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the value of variable
+ <em class="replaceable"><code>varname</code></em> as a list,
+ one list element per reference. Radiobuttons or multiple
+ selection listboxes are suited widgets which may
+ return list data.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> <span style="font-family:monospace; font-weight: bold;">exists</span> ?<span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>varname</code></em></span>?</div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns 1 if
+ <em class="replaceable"><code>varname</code></em>
+ exists, 0 if it doesn't.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> <span style="font-family:monospace; font-weight: bold;">number</span> </div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Returns the number of variables.
+ </div></div></dd><dt><span class="term">
+ <div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::var</span> <span style="font-family:monospace; font-weight: bold;">all</span> </div></div>
+ </span></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div style="margin-bottom:1.5ex ; padding .5ex">
+ Return a list of variable names and values.
+ </div></div></dd></dl></div><p style="width:90%">See <a class="xref" href="examples.html#variable_access" title="Example 3. Variable Access">Example 3, “Variable Access”</a>.</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="upload.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="wrap.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">upload </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> wrap</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/wrap.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/wrap.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/wrap.html (added)
+++ tcl/site/rivet/manual2.1/wrap.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,9 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>wrap</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="var.html" title="var"><link rel="next" href="wrapline.html" title="wrapline"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">wrap</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="var.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="wrapline.html"><img src="images/next.png" alt="Next"></a></td></tr></table></div><div
class="refentry" title="wrap"><div class="refentry.separator"><hr></div><a name="wrap"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>wrap —
+ Split a string on newlines.
+ </p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::wrap</span> ?<span style="font-family:monospace; font-weight: bold;">string</span>? ?<span style="font-family:monospace; font-weight: bold;">maxlen</span>? <span style="font-family:monospace; font-weight: bold;">html</span></div></div></div><div class="refsect1" title="Description"><a name="idp5677248"></a><h2>Description</h2><p style="width:90%">
+ For each line, wrap the line at a space character to be
+ equal to or shorter than the maximum length value passed.
+ </p><p style="width:90%">
+ If a third argument called "-html" is present, the string is put together
+ with html <br> line breaks, otherwise it's broken with newlines.
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="var.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="wrapline.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">var </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> wrapline</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/wrapline.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/wrapline.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/wrapline.html (added)
+++ tcl/site/rivet/manual2.1/wrapline.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,11 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>wrapline</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="commands.html" title="Rivet Tcl Commands and Variables"><link rel="prev" href="wrap.html" title="wrap"><link rel="next" href="examples.html" title="Examples and Usage"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">wrapline</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="wrap.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Rivet Tcl Commands and Variables</th><td width="20%" align="right"> <a accesskey="n" href="examples.html"><img src="images/next.png" alt="Next"></a></td></
tr></table></div><div class="refentry" title="wrapline"><div class="refentry.separator"><hr></div><a name="wrapline"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>wrapline —
+ Split the line into multiple lines by splitting on space characters
+ </p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">::rivet::wrapline</span> ?<span style="font-family:monospace; font-weight: bold;">string</span>? ?<span style="font-family:monospace; font-weight: bold;">maxlen</span>? <span style="font-family:monospace; font-weight: bold;">html</span></div></div></div><div class="refsect1" title="Description"><a name="idp5685232"></a><h2>Description</h2><p style="width:90%">
+ Given a line and a maximum length and option "-html" argument, split the line
+ into multiple lines by splitting on space characters and making sure each line
+ is less than maximum length.
+ </p><p style="width:90%">
+ If the third argument, "-html", is present, return the result with the lines
+ separated by html <br> line breaks, otherwise the lines are returned
+ separated by newline characters.
+ </p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="wrap.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="commands.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="examples.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">wrap </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> Examples and Usage</td></tr></table></div></body></html>
Added: tcl/site/rivet/manual2.1/xml_calendar.html
URL: http://svn.apache.org/viewvc/tcl/site/rivet/manual2.1/xml_calendar.html?rev=1416329&view=auto
==============================================================================
--- tcl/site/rivet/manual2.1/xml_calendar.html (added)
+++ tcl/site/rivet/manual2.1/xml_calendar.html Mon Dec 3 01:16:15 2012
@@ -0,0 +1,87 @@
+<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>XmlCalendar</title><link rel="stylesheet" type="text/css" href="rivet.css"><meta name="generator" content="DocBook XSL Stylesheets V1.76.1"><link rel="home" href="index.html" title="Apache Rivet"><link rel="up" href="calendar_package.html" title="Calendar Package"><link rel="prev" href="calendar.html" title="Calendar"><link rel="next" href="html_calendar.html" title="HtmlCalendar"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">XmlCalendar</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="calendar.html"><img src="images/prev.png" alt="Prev"></a> </td><th width="60%" align="center">Calendar Package</th><td width="20%" align="right"> <a accesskey="n" href="html_calendar.html"><img src="images/next.png" alt="Next"></a></td></tr
></table></div><div class="refentry" title="XmlCalendar"><div class="refentry.separator"><hr></div><a name="xml_calendar"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>XmlCalendar — Prints XML formatted calendar tables</p></div><div class="refsynopsisdiv" title="Synopsis"><h2>Synopsis</h2><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">XmlCalendar</span> <span style="font-family:monospace; font-weight: bold;"><em class="replaceable"><code>calendar_name</code></em></span> ?<span style="font-family:monospace; font-weight: bold;">-option1 <em class="replaceable"><code>option_list</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;">-option2 <em class="replaceable"><code>option_list</code></em></span>? ?<span style="font-family:monospace; font-weight: bold;">...</span>?<
/div></div></div><div class="refsect1"><a name="idp8601232"></a><p style="width:90%">
+ An XmlCalendar object is created and returned. XmlCalendar objects
+ print XML formatted calendar tables. The markup can be customized
+ using the configuration options.
+ </p><p style="width:90%">
+ Configuration options accept odd-length lists as values. An option_list has the following
+ structure
+ </p><p style="width:90%">
+ </p><pre style="background:#ccc; margin: 2ex; margin-right: 10%; padding: 1ex; border: dashed black 1px ; white-space: pre; font-family: monospace; font-size: 90%;" class="programlisting">tag_name attr11 val1 attr2 val2 ...</pre><p style="width:90%">
+ </p><p style="width:90%">
+ The first element of an option list is a tag name, the remaining terms are therefore
+ an even-length sublist which is interpreted as a sequence of attribute-value pairs that
+ will in turn become attributes of the tag.
+ </p></div><div class="refsect1" title="Methods"><a name="idp8604336"></a><h2>Methods</h2><div class="variablelist"><dl><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex ">
+ cal_obj <span style="font-weight:bold ; font-family:monospace">emit</span> -opt1 val1 -opt2 val2</div></div><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex ">
+ cal_obj <span style="font-weight:bold ; font-family:monospace">emit</span> ?<span style="font-family:monospace; font-weight: bold;">month</span>? ?<span style="font-family:monospace; font-weight: bold;">year</span>? -opt1 val1 -opt2 val2</div></div><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex ">
+ cal_obj <span style="font-weight:bold ; font-family:monospace">emit</span> ?<span style="font-family:monospace; font-weight: bold;">
+ <em class="replaceable"><code>month | year</code></em></span>? -opt1 val1
+ -opt2 val2</div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ The method 'emit' if invoked without arguments returns an
+ XML calendar table of the current month
+ </div></div></dd></dl></div></div><div class="refsect1"><a name="idp8615392"></a><div class="refsect2" title="Options"><a name="idp8615648"></a><h3>Options</h3><div class="variablelist"><dl><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-container (tag_name
+ attr11 val1 attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Assigns an options list to the XML element that
+ will hold the whole table.
+ </div><div style="margin-bottom:1.5ex ; padding .5ex">
+ The default tag for the container is 'calendar', with no attributes.
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-header (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Assigns tag name and attributes to the XML header element (default: calheader)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-body (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Assigns tag name and attributes to the XML body element of the table (default: calbody)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-banner (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Assigns tag name and attributes to the XML banner element of the table (default: monthyear)
+ </div><div style="margin-bottom:1.5ex ; padding .5ex">
+ The header of a calendar table is made of a banner, showing the Month and Year number, and
+ of a weekdays bar.
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-foot (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Assigns tag name and attributes to the XML foot element
+ of the table (default: calfoot).
+ </div><div class="note" title="Note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.png"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
+ This option was added for completeness, but it's not implemented yet
+ </td></tr></table></div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-banner_month (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element holding the
+ month name (default:month)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-banner_year (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element holding the
+ month name (default: year)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-weekdays (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element holding the
+ weekday header (default: weekdays)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-weekdays_cell (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element holding the
+ each single weekday (default: wkdays)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-days_row (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element holding the
+ each row of the calendar table (default: week)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-days_cell (tag_name attr11 val1
+ attr2 val2 ...)</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ Tag name and attributes for the XML element representing
+ a cell in the calendar table (default: day)
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-cell_function proc</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ If set this option is the name of a procedure that gets
+ called for every day of the month. The procedure must
+ accept 4 argument representing day, month, year and weekday
+ and must return an odd-length list interpreted in the same
+ way as options lists.
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-current_day day</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ This option works as a simple method for pointing out
+ a specific day of the month. If set with a day number
+ that day will get the class attribute automatically
+ set as "current"
+ </div></div></dd><dt></dt><dd><div style="padding:4 ; margin-top:3 ; margin-bottom:3 ; width:75%"><div class="cmdsynopsis" style="width:80%"><div style="background:#ccccff ; margin:1ex ; padding:.4ex; padding-left: 0.8ex; word-spacing:1ex "><span style="font-weight:bold ; font-family:monospace">-current_weekday 0-6 | today</span> </div></div><div style="margin-bottom:1.5ex ; padding .5ex">
+ This option works as a simple method for pointing out
+ a specific weekday of the month. If set with a weekday
+ index (0: Sunday, 6: Saturday) the corresponding cell in
+ the weekdays header will get the class attribute automatically
+ set as "current_wkday"
+ </div></div></dd></dl></div></div></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="calendar.html"><img src="images/prev.png" alt="Prev"></a> </td><td width="20%" align="center"><a accesskey="u" href="calendar_package.html"><img src="images/up.png" alt="Up"></a></td><td width="40%" align="right"> <a accesskey="n" href="html_calendar.html"><img src="images/next.png" alt="Next"></a></td></tr><tr><td width="40%" align="left" valign="top">Calendar </td><td width="20%" align="center"><a accesskey="h" href="index.html"><img src="images/home.png" alt="Home"></a></td><td width="40%" align="right" valign="top"> HtmlCalendar</td></tr></table></div></body></html>
---------------------------------------------------------------------
To unsubscribe, e-mail: site-cvs-unsubscribe@tcl.apache.org
For additional commands, e-mail: site-cvs-help@tcl.apache.org