TWiki . TWiki . TWikiForms |
Form-based input in topics, with name/value pairs stored as Meta Data variables; multiple forms per web & topic
By adding form-based input to free-form content, you can structure topics with unlimited, easily searchable categories. When forms are enabled for a web and selected in a topic, the form appears in edit mode, and the contents are rendered as a table when viewing the actual page. When editing, can switch forms, if more than one is defined, or remove forms entirely. Form input values are stored as TWikiMetaData; all data is saved.
Form Templates replace TWikiCategory Tables from the 01-Dec-2000 version of TWiki.
Form Templates more powerful, flexible replacement for the original TWikiCategoryTable. Data from existing category tables can be imported directly.
Form Templates | Category Tables |
---|---|
defined in topics | defined in templates |
many forms per web | one table per web |
saved as Meta Data | saved as HTML |
Change & Add Form buttons | UseCategory radio button |
On upgrading from the previous TWiki, a Form Template topic has to be built for each web that used a Category Table, recreating the fields and values from the old twikicatitems.tmpl
. The replacement Form Template must be set as the first item in the WebPreferences variable =WEBFORM
. If missing, pages will display, but attempting to edit results in an error message.
The new Form Template system should work with old Category Table data with no special conversion. Data is assigned to Meta variables the first time an imported topic is edited and saved in the new system.
NOTE: If things aren't working correctly, there may be useful entries in data/warning.txt
.
A Form Template is simply a page containing your form, defined in a table where each row is one form field.
Example: WebFormTemplate from the TWiki.Know web| *Name* | *Type* | *Size* | *Values* | *Tooltip message* | | Know.TopicClassification | select | 1 | Know.NoDisclosure, Know.PublicSupported, Know.PublicFAQ | blah blah... | | Know.OperatingSystem | checkbox | 3 | Know.OsHPUX, Know.OsLinux, Know.OsSolaris, Know.OsWin | blah blah... | | Know.OsVersion | text | 16 | | blah blah... |
Name Type Size Values Tooltip message TopicClassification select 1 NoDisclosure, PublicSupported, PublicFAQ blah blah... OperatingSystem checkbox 3 OsHPUX, OsLinux, OsSolaris, OsWin blah blah... OsVersion text 16 blah blah...
The Form Template can also be defined in an alternative way by using more then one topic:
Example: WebFormTemplate
- Know.WebFormTemplate Form main definition:
Name Type Size Values Tooltip message TopicClassification select 1 ... blah blah... OperatingSystem checkbox 3 ... blah blah... OsVersion text 16 ... blah blah...
- Know.TopicClassification field value definition:
Name Type Tooltip message NoDisclosure option blah blah... PublicSupported option blah blah... PublicFAQ option blah blah...
...
can be used for force a link, at present ...
format is not supported.
WebTopicEditTemplate
or using field=value or for checkboxes field
Forms are enabled on a per web basis. The WEBFORMS
variable in WebPreferences is optional and defines a list of possible Form Templates. Example:
WEBFORMS
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 open a screen that enables selection of a form specified in WEBFORMS
, or the No form option.
WebTopicEditTemplate
topic in a web and adding a form to it. Initial Form values can be set there.
formtemplate
parameter in the URL. Initial values can then be provided in the URLs or as form values:
name
, ex: ?BugPriority=1
namevalue=1
, ex: ?ColourRed=1
.
When you create a new topic in a web that has the WEBFORMS Preferences variable set, an Add Form button appears at the bottom of the page. You can start all new topics with forms enabled, and pre-select a form if there's more than one available:
A form embedded in a topic also appears in a new topic. This is done by specifying the formtemplate
parameter in the URL.
WEBFORMS
variable defines alternative Form Templates that can be selected by pressing Change in edit mode.
SubmitExpenseReport
topic where you can create new expense reports - a SubmitVacationRequest
topic and so on. These can specify the required template topic with its associated Form.
The Form Template topic name, fields and values are stored as Meta Data. The order of field/value pairs in the Meta Data is the same as in the Template.
-- JohnTalintyre - 16 Aug 2001
----- Revision r1.10 - 12 Sep 2001 - 06:51 GMT - MikeMannix
|