Changes between Initial Version and Version 1 of TracFormsPlugin/Syntax


Ignore:
Timestamp:
Jun 17, 2008, 12:44:01 AM (16 years ago)
Author:
Rich Harkins
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TracFormsPlugin/Syntax

    v1 v1  
     1== !TracForm Syntax ==
     2
     3All !TracForm blocks are wrapped and formatted as follows:
     4
     5{{{
     6
     7{{{
     8#!TracForm
     9#
     10# comments
     11#
     12#! command
     13#! command arg1 arg2
     14#
     15# more comments...
     16#
     17#! more_commands "quoted argument"
     18#
     19
     20[tf.checklist:field]
     21[tf.who:field]
     22
     23}}}
     24
     25}}}
     26
     27(... and so on)
     28
     29Comments are ignored and can be intermixed with commands until the first non-comment line.  [tf] operations are intermixed with other Trac wiki entities and the results ''can'' in some cases cause other wiki entities to take place (but only where it makes sense).
     30
     31=== !TracForm Configuration ===
     32
     33In the header section of the form, several commands can be used to control the rendering and configuration of the form in the form of "#!command [arg...]" lines before the first non-comment line:
     34
     35|| '''Command''' || '''Version''' || '''Arguments''' || '''Meaning''' ||
     36|| '''page''' || 0.1+ || page-context || Sets the page portion of the context used to store the form.  This defaults to the page the user is currently on. ||
     37|| '''subcontext''' || 0.1+ || subcontext || Sets a subcontext within the page.  For example, a SVN checklist could have a "#!subcontext SVN" to differentiate it from other forms on the page. ||
     38|| '''default''' || 0.1+ || operation || Specifies the default operation in [tf:args] blocks.  Defaults to "checkbox" ||
     39|| '''track_fields''' || 0.1+ || [yes|no] || If no argument given or yes, keep track of field changes in this form.  Defaults to false (no field changes tracked).  This affects [tf.who] and [tf.when] ||
     40|| '''submit_label''' || 0.1+ || label || Set the label to use for the submit button at the end of the form.  The default is "Submit Form" ||
     41|| '''setenv''' || 0.1+ || name value || Set the name to value in the form's environment (or any subforms therein). ||
     42
     43=== !TracForm Operations ===
     44
     45Within the TracForm, you can use the following commands with [tf.OP:arg...] blocks:
     46
     47|| '''Operation''' || '''Version''' || '''Argument(s)''' || '''Meaning''' ||
     48|| '''tf.checkbox''' || 0.1+ || name [value] || Put an HTML checkbox here.  Use value only if specified (on is default). ||
     49|| '''tf.radio''' || 0.1+ || name value || Put an HTML checkbox here.  Use the name and value pair together. ||
     50|| '''tf.input''' || 0.1+ || name default || Put an HTML form input field here. ||
     51|| '''tf.who''' || 0.1+ || name || Show which user most recently affected the specified field.  This requires track_fields to be set in the commands section. ||
     52|| '''tf.when''' || 0.1+ || name [strftime format string] || Show when the most change was made on the specified field.  This requires track_fields to be set in the commands section. ||
     53|| '''tf.form_updater''' || 0.1+ || || Show the most recent updater of the form itself. ||
     54|| '''tf.form_updated_on''' || 0.1+ || [strftime format string] || Show when the form was most recently updated. ||
     55
     56=== !TracForm Arguments ===
     57
     58Each arguments listed above are either:
     59
     60 * Separated by whitespace.  Example:  #!setenv VAR VALUE
     61 * Quoted with double-quotes.  Example: #!submit_label "Hello World"
     62 * Quoted with single-quotes.  Example: [tf.input:'Big Text']
     63
     64=== !TracForm Environment ===
     65
     66Using the #!setenv command above, you can retrieve previously defined elements with %NAME% (case insensitive).  Other environment variables are also defined by the system:
     67
     68|| '''Variable''' || '''Version''' || '''Meaning''' ||
     69|| '''%USER%''' || 0.1+ || The currently active user. ||
     70|| '''%NOW%''' || 0.1+ || The current date and time. ||
     71
     72All substitutions may be applied to any argument within #! command or [tf:] operation sections.
     73