AutoViewTemplatePlugin
Automatically sets VIEW_TEMPLATE and EDIT_TEMPLATE
Description
This plugin sets the VIEW_TEMPLATE and EDIT_TEMPLATE variables according to a
corresponding form definition. So when you attach a new form to a topic, this
plugin will enable the corresponding view/edit template automatically. This
comes in very handy for applications where users create new topics
without the help of a topic creator wizard, e.g. creating a new topic for a yet
non-existing WikiWord. Together with the appropriate application
settings, this plugin will then assure that the data the user enters is handled
appropriately during view and edit.
There are two modes on how the name of the template is derived:
-
exist
(default) and
-
section
.
Mode "exist"
A topic that has a MyForm
WikiForm attached to it, will be displayed
using the view template MyView
and editted using the MyEdit
if they exist. The template name is derived by stripping off the suffix
...Form
from the form name and appending ...View
. The Wiki engine will
then use the template name MyView
to search for the correct template along
the template search path, for example using a topic MyView
.
Examples:
You have a form called PurchaseRequestForm
. The plugin will now search for
PurchaseRequestViewTemplate
, and PurchaseRequestEditTemplate
.
Mode "section"
A topic with a MyForm
will be displayed/editted using the template name
stored in the named section viewtemplate/edittemplate
. For example given the
MyForm
form definition topic contains a section viewtemplate
whose only
content is MyOtherView
, then this will be used to view the topic. Likewise,
the content of the edittemplate
section in MyForm
will read to find the
edit template.
By default existing values for VIEW_TEMPLATE and EDIT_TEMPLATE have priority.
You can change this behaviour in configure
so that the form defined templates
have priority.
Examples:
We have a form called PurchaseRequestForm
which contains the usual table that defined the form fields.
We want this form to define that the topics are viewed with ViewFormAtTopTemplate
and edited with EditPurchaseRequestTemplate
.
Below this we place the two sections that defines the templates to be used. Note that you must omit the ...Template from the template names.
%STARTSECTION{"viewtemplate"}%ViewFormAtTopTemplate%ENDSECTION{"viewtemplate"}%
%STARTSECTION{"edittemplate"}%EditPurchaseRequest%ENDSECTION{"edittemplate"}%
Configuration Settings
The following settings can be defined in configure
Setting |
Description |
Default |
{Plugins}{AutoViewTemplatePlugin}{Debug} |
Turn on debugging by turning this on |
Default: On |
{Plugins}{AutoViewTemplatePlugin}{Override} |
Form defined templates override VIEW_TEMPLATE and EDIT_TEMPLATE settings |
Default: Off |
{Plugins}{AutoViewTemplatePlugin}{Mode} |
The mode the plugin uses for defining templates. exist for deriving the template name from the form name section for defining the template in a section of the form definition topic |
Default: exist |
Plugin Installation Instructions
You do not need to install anything in the browser to use this extension. The following instructions are for the administrator who installs the extension on the server.
Open configure, and open the "Extensions" section. Use "Find More Extensions" to get a list of available extensions. Select "Install".
If you have any problems, or if the extension isn't available in configure
, then you can still install manually from the command-line. See http://foswiki.org/Support/ManuallyInstallingExtensions for more help.
Plugin Info
History: r1 - 10 Apr 2011 - 21:43:08 - ProjectContributor