Contents
MoinForms
Description
The MoinForms extension for MoinMoin provides a way of defining Web forms in wiki pages that support elementary and extensible validation, replicated form sections, and a framework for handling submitted forms. Each form is defined using conventional wiki syntax together with macros that produce HTML form elements and is encapsulated using the MoinMoin parsed region syntax. Thus, each form appears as an integrated part of the page in which it is defined.
To handle submitted forms, MoinForms employs handler actions that support basic manipulation and validation actions, along with the storage of submitted form data, and such actions can be extended to perform enhanced validation and other submission-related actions.
Download & Release Notes
Download |
Release Version |
Moin Version |
Release Notes |
0.1 |
1.8, 1.9 |
http://hgweb.boddie.org.uk/MoinForms/file/rel-0-1/README.txt |
Installation
To install MoinForms, consider using the moinsetup tool.
Usage
The HelpOnMoinForms page provided in the MoinForms distribution provides working examples of the macros used to produce HTML form elements and the regions that encapsulate such elements to make functioning HTML forms. Adding a form to a page is as simple as the following example taken from the HelpOnMoinForms page.
Example
{{{#!form fragment=exampleform finishing=finish || '''Name''' || <<FormField(name,ExampleFormDict)>> || || '''Address''' || <<FormField(address,ExampleFormDict)>> || || '''Country''' || <<FormField(country,ExampleFormDict)>> || || || <<FormField(finish,ExampleFormDict,label=Finish)>> || }}}
The ExampleFormDict referenced in the example is a page used to provide details for the named fields in the form. There is also an ExampleFormCountryDict page which provides a choice of countries for the country field; this is referenced by the ExampleFormDict page. By using external dictionaries, a common vocabulary can be built up to support many forms.
Copyright
Copyright (C) 2012, 2013 Paul Boddie <paul@boddie.org.uk>
License
This parser is released under the terms of the GNU GPL version 2 or later.
Discussion
MoinForms is somewhat experimental and this should be considered before deployment.