ChecklistTablePlugin
This plugin helps you to create a checklist with tables. A HTML form for a quick add of new entries and a table editor are also available.
ChecklistTablePlugin depends on the
ChecklistPlugin if you use the
item
table cell format type.
Example:
Features
- table based checklists with persistent item states: you can add or remove items without state lost
- table row editor: a simple way to add, insert or (re)move table entries (rows)
- various table cell formats are supported (item, text, textarea, date, …)
- automatic table format detection: simply put the
%CHECKLISTTABLE%
tag before an existing Foswiki table to get a table editor
Syntax Rules
Simply put a
%CHECKLISTTABLE%
tag to a topic. You get a HTML form to create a checklist table.
You can use the
%CHECKLIST%
tag to customize the checklist states, icons … (see
ChecklistPlugin)
Usage Examples
- a simple checklist table:
%CHECKLISTTABLE%
- a checklist table with your own table format:
%CHECKLISTTABLE{format="|text,20|item|" header="|*Item*|*State*|"}%
- a checklist table with special states and icons:
%CHECKLIST{states="todo|doing|done" stateicons=":-(|:-I|%<nop>Y%"}%
%CHECKLISTTABLE%
- multiple checklist tables on the same topic with special states and icons:
attend to the name attribute:
---++ Checklist Table ONE
%CHECKLIST{name="checklist one" states="not ok|ok" stateicons=":-(|:ok:"}%
%CHECKLISTTABLE{name="checklist one"}%
---++ Checklist Table TWO
%CHECKLIST{name="checklist two" states="todo|doing|done" stateicons=":-(|:-I|%<nop>Y%"}%
%CHECKLISTTABLE{name="checklist two"}%
Attributes
Syntax: %CHECKLISTTABLE{attribute1="value1" attribute2="value" … }%
Example: %CHECKLISTTABLE{name="test"}%
Attribute |
Description |
Example/Default |
allowmove |
enables/disables buttons for move a entry (row) up or down |
allowmove="off" |
buttonpos |
defines the button position of the row actions (edit, insert, move up/down, delete), allowed values: left, right (default), both |
buttonpos="right" |
changerows |
enables/disables row changes (add/insert/remove); allowed values: on, off, add (= allows only add not remove) |
changerows="on" |
defaultcellformat |
if the format attribute does not match with a given Foswiki table the format of a table cell will be changed to this default |
defaultcellformat="textarea,3x30" |
format |
table format (see Table Format section) |
format="|item|text,30|textarea,3x30|" |
header |
table header: a Foswiki table like header or 'off' to disable header |
header="|*State*|*Item*|*Comment*|" |
headerislabel |
table headers are read-only (labels) if set to 'on' |
headerislabel="on" |
initdirection |
initial sorting direction for initsort, set to "up" or "down" |
initdirection="up" |
initsort |
column to sort initially ("1" to number of columns) |
initsort="1" |
name |
name of the checklist |
name="_default" |
sort |
switch table sort feature 'on' or 'off' |
sort="on" |
template |
use template configuration; see template attribute of ChecklistPlugin topic |
template="patchday" |
quickadd |
enables/disables the quick add formular below the table |
quickadd="on" |
quickinsert |
enables/disables the quick insert formular if the mouse is over the insert button () |
quickinsert="on" |
quietsave |
enables/disables Quiet Save button (Quiet Save disables email notification) |
quietsave="on" |
Icons |
deleterowicon |
delete icon () |
deleterowicon="%ICONURL{choice-no}%" |
dummyicon |
placeholder if a action is not available |
dummyicon="%ICONURL{empty}%" |
editrowicon |
edit row icon () |
editrowicon="%ICONURL{pencil}%" |
edittableicon |
edit table icon () |
edittableicon="%ICONURL{edittopic}%" |
insertrowicon |
insert row icon () |
insertrowicon="%ICONURL{plus}%" |
moverowdownicon |
move row down icon () |
moverowdownicon="%ICONURL{down}%" |
moverowupicon |
move row up icon () |
moverowupicon="%ICONURL{up}%" |
The table format syntax of ChecklistTablePlugin uses the
EditTablePlugin syntax.
Attribute Syntax: format="|
Type ,
Parameter ,
Default | ..."
Example: format="|label,0,#|row|item|text,20|textarea,2x20|select,1,0,1,2,3,4,5|radio,3,a,b,c,d,e,f|checkbox,3,A,B,C,D,E,F|date,20,,%Y/%d/%m|"
Format |
Description |
Type |
Paramter |
Default |
checkbox |
size |
item1, item2, … |
a checkbox group; size indicates the number of checkboxes per line |
date |
size |
default date, date format |
a date |
item |
0 |
unused |
a checklist item column; use the %CHECKLIST% tag of the ChecklistPlugin to customize the checklist |
label |
0 |
default text |
unchangeable text |
radio |
size |
item1, item2, … |
radio buttons; size indicates the number of buttons per line |
row |
0 |
unused |
a label field with the row number |
select |
size |
item1, item2, … |
drop down box |
text |
size |
default text |
a editable text |
textarea |
rowsxcols |
default text |
a editable text box |
You can define a special edit field type if you place an
%EDITCELL{"type,paramer,default"}%
variable at the end of a cell content.
Examples
%CHECKLISTTABLE{name="test"}%
Click me to change my state from 'doing' to 'done' t: 26 May 2020 - 07:14 - Main.WikiGuest, last state: todo |
my first item |
for test only |
Click me to change my state from 'todo' to 'doing' t: 26 May 2020 - 07:14 - Main.WikiGuest, last state: todo |
my second item |
for test too |
Plugin Settings
Plugin settings are stored as preferences variables. To reference a plugin setting write
%<plugin>_<setting>%
, i.e.
%CHECKLISTTABLEPLUGIN_SHORTDESCRIPTION%
Hints:
- You can setup every attribute of the
%CHECKLISTTABLE%
tag. You only have to use capital letters, e.g:
* Set ALLOWMOVE = on
- Please use your Main.SitePreferences to setup plugin defaults. This prevents you from overwriting settings on plugin updates. E.g. put the following to your global preferences:
* Set CHECKLISTTABLEPLUGIN_ALLOWMOVE = on
- One line description, is shown in the TextFormattingRules topic:
- Set SHORTDESCRIPTION = Create a checklist table
- Debug plugin: (See output in
data/debug.txt
)
Plugin Installation Instructions
Note: You do not need to install anything on the browser to use this plugin. The following instructions are for the administrator who installs the plugin on the Foswiki server.
- Install (or upgrade to) the latest Foswiki:Extensions.ChecklistPlugin plugin
- Download the ZIP file from the Plugin web (see below)
- Unzip
ChecklistTablePlugin.zip
in your Foswiki installation directory. Content: File: | Description: |
data/System/ChecklistTablePlugin.txt | Plugin topic |
data/System/VarCHECKLISTTABLE.txt | Plugin tag documentation |
lib/Foswiki/Plugins/ChecklistTablePlugin.pm | Plugin Perl module |
lib/Foswiki/Plugins/ChecklistTablePlugin/Core.pm | Perl module |
pub/System/ChecklistTablePlugin/cltpinsertform.js | JavaScript module |
pub/System/ChecklistTablePlugin/example.png | example image |
- Configure the Plugin:
- Run the configure script to enable the Plugin
- Change the Plugin settings as needed
- Test if the installation was successful:
Plugin Info
Related Topics: Plugins,
ChecklistPlugin