Foswiki on GitHub is open for business! Next release meeting: Monday September 1, 1300Z

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:
example.png

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

  1. a simple checklist table:
    %CHECKLISTTABLE%
         
  2. a checklist table with your own table format:
    %CHECKLISTTABLE{format="|text,20|item|" header="|*Item*|*State*|"}%
         
  3. a checklist table with special states and icons:
    %CHECKLIST{states="todo|doing|done" stateicons=":-(|:-I|%<nop>Y%"}%
    %CHECKLISTTABLE%
         
  4. multiple checklist tables on the same topic with special states and icons:
    ALERT! 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 (plus) quickinsert="on"
quietsave enables/disables Quiet Save button (Quiet Save disables email notification) quietsave="on"
Icons
deleterowicon delete icon (choice-no) deleterowicon="%ICONURL{choice-no}%"
dummyicon placeholder if a action is not available dummyicon="%ICONURL{empty}%"
editrowicon edit row icon (pencil) editrowicon="%ICONURL{pencil}%"
edittableicon edit table icon (edittopic) edittableicon="%ICONURL{edittopic}%"
insertrowicon insert row icon (plus) insertrowicon="%ICONURL{plus}%"
moverowdownicon move row down icon (down) moverowdownicon="%ICONURL{down}%"
moverowupicon move row up icon (up) moverowupicon="%ICONURL{up}%"

Table Format

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

Per Cell Format

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

%CHECKLIST{name="test" states="todo|doing|done" stateicons=":-(|:-I|:ok:"}%

%CHECKLISTTABLE{name="test"}%
%CLI{id="1187707107" name="test"}% my first item for test only
%CLI{id="1188310293-000-001" name="test"}% 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)
    • Set DEBUG = 0

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:Sorted ascending
    pub/System/ChecklistTablePlugin/example.png example image
    pub/System/ChecklistTablePlugin/cltpinsertform.js JavaScript module
    lib/Foswiki/Plugins/ChecklistTablePlugin/Core.pm Perl module
    lib/Foswiki/Plugins/ChecklistTablePlugin.pm Plugin Perl module
    data/System/VarCHECKLISTTABLE.txt Plugin tag documentation
    data/System/ChecklistTablePlugin.txt Plugin topic
  • Configure the Plugin:
    • Run the configure script to enable the Plugin
    • Change the Plugin settings as needed
  • Test if the installation was successful:
    • see Examples section

Plugin Info

Plugin Author: Foswiki:Main.DanielRohde
Copyright: © 2007-2008, Foswiki:Main.DanielRohde
License: GPL (GNU General Public License)
Plugin Version: V1.006 (14 May 2009)
Change History:  
V1.006 (14 May 2009) Foswiki:Main.KennethLavrsen: Changed feedback link to Support web. Added the attached files to the topic so they get uploaded to foswiki.org. No code changes. No need to upgrade
V1.005 (15 Dec 2008) Foswiki:Main.KennethLavrsen: Changed namespace to Foswiki and added missing MANIFEST and build script for development on SVN
V1.004 (16 Jan 2008) TWiki:Main:DanielRohde: added initsort and initdirection feature; fixed numeric eq error; fixed missing default value rendering of 'date' format type;
V1.003 (22 Oct 2007) TWiki:Main.DanielRohde: added quick insert feature; added new attributes (quickadd, quickinsert, buttonpos); fixed typos; fixed whitespaces in format bug; fixed (forced) link in text(area) bug;
V1.002 (30 Aug 2007): TWiki:Main.DanielRohde: fixed major pre/verbatim bug; fixed and added documentation; added sort feature; added changerows attribute; added EDITCELL feature; fixed Opera bug; fixed topic lock bug
V1.001 (28 Aug 2007): TWiki:Main.DanielRohde Initial version
Foswiki Dependency: $Foswiki::Plugins::VERSION 1.1
ChecklistPlugin, JSCalendarContrib
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.008
Plugin Home: http://foswiki.org/Extensions/ChecklistTablePlugin
Feedback: http://foswiki.org/Support/ChecklistTablePlugin

Related Topics: Plugins, ChecklistPlugin

Topic revision: r5 - 09 Dec 2009, CrawfordCurrie
 
The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. see CopyrightStatement. Creative Commons License