summaryrefslogtreecommitdiff
path: root/TWiki/TWikiForms.mdwn
diff options
context:
space:
mode:
authorMikeMannix <MikeMannix>2001-09-01 11:07:46 +0000
committerMikeMannix <MikeMannix>2001-09-01 11:07:46 +0000
commit3a90c225b2bf7f4982402ac42d6e127f3f527850 (patch)
tree5c611090074e2d6ec39a6ef67268e1d2141449a9 /TWiki/TWikiForms.mdwn
parent08d86ce5b1db45b7aa2d446628ce3343c0fb5871 (diff)
none
Diffstat (limited to 'TWiki/TWikiForms.mdwn')
-rw-r--r--TWiki/TWikiForms.mdwn151
1 files changed, 78 insertions, 73 deletions
diff --git a/TWiki/TWikiForms.mdwn b/TWiki/TWikiForms.mdwn
index dfa64aeb..e8b5b196 100644
--- a/TWiki/TWikiForms.mdwn
+++ b/TWiki/TWikiForms.mdwn
@@ -10,13 +10,13 @@ If forms are enabled for a Web and a topic has a form you will see it as a table
You can search for topics with specific form data using the %SEARCH% variable - see [[TWikiDocumentation]].
-### <a name="Goodby_to_TWikiCategoryTables"> Goodby to TWikiCategoryTables </a>
+### <a name="TWikiCategoryTables_Are_History"> TWikiCategoryTables Are History </a>
-This is a more general replacement for the [[TWikiCategoryTable]] capability, in particular Forms are defined by special topics, where as categories were defineind using special templates.
+Form Templates more powerful, flexible replacement for the original TWikiCategoryTable.
#### <a name="Changes_from_the_Category_Table_"> Changes from the Category Table System </a>
-Main changes from TWikiCategoryTable: The templates for category view/edit have been dropped.and render to HTML on viewing
+Main changes from TWikiCategoryTable: The templates for category view/edit have been dropped, and the forma renders to HTML on viewing.
<table border="1" cellpadding="1" cellspacing="0">
<tr>
@@ -57,17 +57,27 @@ On upgrading, the administrator must produce a form template topic for each web
* **Field Type:** The type of a field when editing a form. The type defines the HTML INPUT tag widgets when editing a topic:
* **select:** Drop down box or selector
* **checkbox:** One or more check boxes
- * **checkbox+buttons:** One or more check boxes, plus _set_ and _clear_ buttons to set/clear all check boxes
+ * **checkbox+buttons:** One or more check boxes, plus [Set] and []\[Clear] buttons to set/clear all checkboxes
* **radio:** One or more radio buttons
* **text:** A one-line text field
- * **textarea:** A general text area - size is _rows_x_cols_ e.g. 40x10
+ * **textarea:** A general text area - size is _rows_x_cols_ 40x10
* **Field Value:** Value of a form field. Can be one or more values from a fixed set (select, checkbox, radio type) or free form (text type). (Used to be called _category item value_)
#### <a name="Defining_a_Form_Template"> Defining a Form Template </a>
-Form templates are defined by topics, one topic per form template. A form template topic has descriptive text mixed with the form template definition in the form of a TWiki table.
+A Form Template is simply a page containing your form, defined in a table where each row is one form field.
-#### <a name="Examples"> Examples </a>
+1. Create a new topic with your Form name: MyForm, ExpenseReport, InfoCategory, RecordReview, whatever you need.
+2. Create a TWiki table, with each column representing one element of an entry field: Name, Type, Size, Values, and Tooltip msessage (see sample below).
+3. For each field, fill in a new line; for the type of field, select from the list.
+4. Save the topic.
+
+>
+>
+> | *Name:* | *Type:* | *Size:* | *Values:* | *Tooltip message:* |
+> | TopClass | select | 1 | Select one..., Private, Public | must fill |
+> | Target | checkbox+buttons | 3 | 1, No.2, No.3 | Select OS |
+> | Version | text | 16 | | OS version |
#### <a name="Defining_a_Form_in_One_Topic"> Defining a Form in One Topic </a>
@@ -111,63 +121,63 @@ The form template can also be defined in an alternative way by using more then o
* A **form template topic** defines the form
* Values of fields that have more then one value, e.g. of type radio, select and checkbox can be defined by **field value template topics**
-Above Example:
-
-* WebFormTemplate of the TWiki.Know web: <table border="1" cellpadding="1" cellspacing="0">
- <tr>
- <th bgcolor="#99CCCC"><strong>Name:</strong></th>
- <th bgcolor="#99CCCC"><strong>Type:</strong></th>
- <th bgcolor="#99CCCC"><strong>Size:</strong></th>
- <th bgcolor="#99CCCC"><strong>Values:</strong></th>
- <th bgcolor="#99CCCC"><strong>Tooltip message:</strong></th>
- </tr>
- <tr>
- <td><span style="background:"><font color="">Topic Classification</font></span><a href="http://LOCATIONKnow/TopicClassification">?</a></td>
- <td> select </td>
- <td> 1 </td>
- <td>   </td>
- <td> blah blah... </td>
- </tr>
- <tr>
- <td><span style="background:"><font color="">Operating System</font></span><a href="http://LOCATIONKnow/OperatingSystem">?</a></td>
- <td> checkbox </td>
- <td> 3 </td>
- <td>   </td>
- <td> blah blah... </td>
- </tr>
- <tr>
- <td><span style="background:"><font color="">Os Version</font></span><a href="http://LOCATIONKnow/OsVersion">?</a></td>
- <td> text </td>
- <td> 16 </td>
- <td>   </td>
- <td> blah blah... </td>
- </tr>
-</table>
-
-* TopicClassification topic: <table border="1" cellpadding="1" cellspacing="0">
- <tr>
- <th bgcolor="#99CCCC"><strong>Name:</strong></th>
- <th bgcolor="#99CCCC"><strong>Type:</strong></th>
- <th bgcolor="#99CCCC"><strong>Tooltip message:</strong></th>
- </tr>
- <tr>
- <td><span style="background:"><font color="">No Disclosure</font></span><a href="http://LOCATIONKnow/NoDisclosure">?</a></td>
- <td> option </td>
- <td> blah blah... </td>
- </tr>
- <tr>
- <td><span style="background:"><font color="">Public Supported</font></span><a href="http://LOCATIONKnow/PublicSupported">?</a></td>
- <td> option </td>
- <td> blah blah... </td>
- </tr>
- <tr>
- <td><span style="background:"><font color="">Public FAQ</font></span><a href="http://LOCATIONKnow/PublicFAQ">?</a></td>
- <td> option </td>
- <td> blah blah... </td>
- </tr>
-</table>
-
-#### <a name="Notes"> Notes </a>
+>
+>
+> * WebFormTemplate of the TWiki.Know web: <table border="1" cellpadding="1" cellspacing="0">
+> <tr>
+> <th bgcolor="#99CCCC"><strong>Name:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Type:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Size:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Values:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Tooltip message:</strong></th>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">Topic Classification</font></span><a href="http://LOCATIONKnow/TopicClassification">?</a></td>
+> <td> select </td>
+> <td> 1 </td>
+> <td>   </td>
+> <td> blah blah... </td>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">Operating System</font></span><a href="http://LOCATIONKnow/OperatingSystem">?</a></td>
+> <td> checkbox </td>
+> <td> 3 </td>
+> <td>   </td>
+> <td> blah blah... </td>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">Os Version</font></span><a href="http://LOCATIONKnow/OsVersion">?</a></td>
+> <td> text </td>
+> <td> 16 </td>
+> <td>   </td>
+> <td> blah blah... </td>
+> </tr>
+> </table>
+>
+> * TopicClassification topic: <table border="1" cellpadding="1" cellspacing="0">
+> <tr>
+> <th bgcolor="#99CCCC"><strong>Name:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Type:</strong></th>
+> <th bgcolor="#99CCCC"><strong>Tooltip message:</strong></th>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">No Disclosure</font></span><a href="http://LOCATIONKnow/NoDisclosure">?</a></td>
+> <td> option </td>
+> <td> blah blah... </td>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">Public Supported</font></span><a href="http://LOCATIONKnow/PublicSupported">?</a></td>
+> <td> option </td>
+> <td> blah blah... </td>
+> </tr>
+> <tr>
+> <td><span style="background:"><font color="">Public FAQ</font></span><a href="http://LOCATIONKnow/PublicFAQ">?</a></td>
+> <td> option </td>
+> <td> blah blah... </td>
+> </tr>
+> </table>
+
+#### <a name="Various_Implementation_Notes"> Various Implementation Notes </a>
* This format allows you to define field items with / without [[TWiki/WikiNames]], depending on your needs.
* The topic can be protected in the usual manner so that not everybody can change the form template - see [[TWikiAccessControl]]
@@ -176,17 +186,13 @@ Above Example:
* The first item in the list is the default item. Alternative initial values can be given in a topic template such as <code>**WebTopicEditTemplate**</code> or using fieldFLD=value or for checkboxes fieldFLDcheckbox=1 in URL
* The topic definition is not read when a topic is viewed
-### <a name="Specification"> Specification </a>
-
-#### <a name="Enabling_Forms_for_a_Web"> Enabling Forms for a Web </a>
-
-By default topics can be edited in free form. A form can be added to a topic to give it more structure. Forms are enabled on a per web basis.
+### <a name="Enabling_Forms_by_Web"> Enabling Forms by Web </a>
-The <code>**WEBFORMS**</code> variable in [[WebPreferences]] is optional and defines a list of possible form templates e.g.
+Forms are enabled on a per web basis. The <code>**WEBFORMS**</code> variable in [[WebPreferences]] is optional and defines a list of possible form templates e.g.
* Set WEBFORMS = BugForm, FeatureForm, BookLoanForm
-With this present an extra button is added to the edit view. If the topic doesn't have a form an _Add Form_ button appears at the end of the topic. If a form is present a _Change_ button appears in the top row of the form to the right of the form name. The buttons leads to a screen that enables _no form_ to be selected of one of those specified by `WEBFORMS`.
+With <code>**WEBFORMS**</code> enabled, an extra button is added to the edit view. If the topic doesn't have a form an [Add Form] button appears at the end of the topic. If a form is present, a [Change] button appears in the top row of the form. The buttons lead to a screen that enables _no form_ to be selected or one of those specified by `WEBFORMS`.
A default form template (i.e. new topics get this default form) can be provided by creating the <code>**WebTopicEditTemplate**</code> topic in a Web and adding a form to it. Initial form values can be set here.
@@ -203,9 +209,8 @@ A form embedded in a topic also appears in a new topic. This is done by specifyi
### <a name="Setting_Up_Multiple_Form_Options"> Setting Up Multiple Form Options </a>
-* The optional <code>**WEBFORMS**</code> variable defines alternative Form Templates that can be selected after pressing [Change] button on the Edit page
+* The optional <code>**WEBFORMS**</code> variable defines alternative Form Templates that can be selected after pressing [Change] on the Edit page
* A template topic can use any form template
-* Decided not to ask user to choose a template or form template when creating a topic as goes against the KISS of Wiki systems.
* New topics with a form get instantiated by simple HTML forms asking for a topic name. If there is a SubmitExpenseReport topic were you can create new expense reports, a SubmitVacationRequest topic and so on. These can specify the required template topic and hence form. **_HUH?_**
### <a name="Form_Template_Data_Storage"> Form Template Data Storage </a>