The Caboteria / TWiki Web / TablePlugin (15 Nov 2012, TWikiContributor)

Table Plugin

Control attributes of tables and sorting of table columns

Introduction

The TablePlugin gives extra control of table display:

Sorting

Click on column heading text to sort by a column. Initial column will be sorted in descending order, click again to get ascending order. The type of data in the cell is determined automatically:

Row spans

Table cells with a single caret indicate follow-up rows of multi-row spans. For example,

| One One | One Two | One Three |
| ^ | Two Two | Two Three |
| Three One | ^ | Three Three |
   
One One One Two One Three
Two Two Two Three
Three One Three Three

TablePlugin Global Settings

Plugin settings are stored as preferences variables. To reference a plugin setting write %<plugin>_<setting>%, for example, %INTERWIKIPLUGIN_SHORTDESCRIPTION%

Table Attributes

Attributes are defined as a TABLEATTRIBUTES Plugin setting in this topic, a TABLEATTRIBUTES preferences setting, or on line before the table using %TABLE{...}%:

The %TABLE{...}% settings override TABLEATTRIBUTES preferences settings, which override the TABLEATTRIBUTES Plugin settings.

The setting disableallsort is normally not used as a TABLE or TABLEATTRIBUTES setting. Plugins such as EditTablePlugin dynamically sets disableallsort to disable sorting while editing a table. For this to work it is important that EditTablePlugin runs before TablePlugin, which is the default. The setting sort can be overwritten by a URL parameter or hidden formfield of the same name. Plugins such as EditTablePlugin can use this to disable table header sorting while in edit mode.

Examples

Use of %TABLE{...}%

Line before table: %TABLE{ sort="on" tableborder="0" cellpadding="4" cellspacing="3" cellborder="0" headerbg="#D5CCB1" headercolor="#666666" databg="#FAF0D4, #F3DFA8" headerrows="2" footerrows="1" }%

Table with two Header Rows and Footer Row
Num Status Action Who When Progress
Num Status Action Who When Progress
1 C Chose new colours John 1-Dec-02  
2 X Release John 1-Apr-02  
3   Get feedback Anne 1-Feb-02  
12 C Spec error handling Jack 1-Dec-02  
5   Abc John    

Table with 4 digit year dates and no use of %TABLE{...}%

When
1-Jan-2004
1-Jan-2003
2-Jan-2005

TablePlugin and CSS

Information for programmers.

TablePlugin implements the following precedence:

CSS written by TablePlugin

.twikiTable The table
.twikiSortedCol A sorted column
.twikiSortedAscendingCol Sorted column, ascending
.twikiSortedDescendingCol Sorted column, descending
.tableSortIcon The sort icon holder (span)
.twikiFirstCol The first column
.twikiTableEven Even numbered rows
.twikiTableOdd Odd numbered rows
.twikiTableCol + column number Unique column identifier, for instance: twikiTableCol0
.twikiTableRow + type + row number Unique row identifier, for instance: twikiTableRowdataBg0

Plugin Installation Instructions

Note: This plugin is pre-installed with your TWiki release. You should not have to install it other than to do an upgrade.

Plugin Info

Plugin Author: TWiki:Main.JohnTalintyre, TWiki:Main.PeterThoeny
Copyright: © 2001-2003 TWiki:Main.JohnTalintyre,
© 2001-2012 Peter[at]Thoeny.org, TWiki.org,
© 2005-2012 TWiki:TWiki.TWikiContributor
License: GPL (GNU General Public License)
Plugin Version: 2012-11-14
Change History:  
2012-11-14: TWikibug:Item7020: Categorize TWiki Variable TABLE
2012-10-29: TWikibug:Item7015: Fix for "Cannot handle date (0, 0, 0, 14, 2, 1100)" error on very early date
2012-09-07: TWikibug:Item6837: Doc fixes
2011-07-27: TWikibug:Item6779: Fix for tables rendering too dark in Firefox 4
2011-07-15: TWikibug:Item6764: Minor fix to remove warning message in error log
2011-07-09: TWikibug:Item6725: Change global package variables from "use vars" to "our"
2010-05-16: 1.2 TWikibug:Item6433 - doc improvements
2010-03-31: 1.12 TWikibug:Item6414 - fixed incorrect sorting of ISO dates. -- Peter Thoeny
2010-03-21: 1.11 TWikibug:Item6406 - fixed incorrect sorting for negative numbers. -- TWiki:Main/BryanKitts
2010-03-08: 1.1 TWikibug:Item6405 - fixed incorrect sorting for numbers with decimal places. -- Peter Thoeny
30 Sep 2008: 1.035 Fix sorting of attachment date column.
03 Aug 2008: 1.034 TWiki 4.2.1 release version
20 Mar 2008: 1.033 TWikibug:Item5387: allow rowspanned columns to contain HTML tags; otherwise it is impossible to add an invisible anchor to a rowspanned cell
16 Dec 2007: 1.030: Kenneth Lavrsen: Fixed the problem of tables being sorted by by TablePlugin while the table is being edited by plugins such as EditTablePlugin. This required adding a new attribute disableallsort so plugins such as EditTablePlugin can temporarily disable all sorting for a table. Additionally the CGI variable (URL parameter or hidden formfield) sort can be set to "off" which disables all header sorting in the topic. This is used by plugins such as EditTablePlugin to disable the sorting by clicking header fields during editing of tables. Ref: TWikibug:Item5135 and TWikibug:Item2690.
03 Dec 2007: Arthur Clemens: Fixed rendering and order of html elements thead, tfoot and tbody; corrected id parameter.
24 Nov 2007: Arthur Clemens: Fixed sorting of columns with only icons; also removed TWiki formatting before sorting.
06 Oct 2007: 15180: PTh: Added VarTABLE to have it listed in TWikiVariables
27 Jun 2007: 1.024 - 1.027 Various small bug fixes.
24 Jun 2007: 1.023: Arthur Clemens: Inline styles are now written to the head; updated default sort icons (from TWikiDocGraphics).
23 Jun 2007: 1.022: Arthur Clemens: Fixed styling of param tablerules on Internet Explorer.
23 May 2007: 1.021: Michael Daum: Fixed css attribute priority to cooperate nicely with skin themes.
27 Dec 2006: 1.020: Kenneth Lavrsen: Fixed initsort so all tables can be initsorted and not only the first. When you sort a table by clicking on the header of a column the table gets sorted accordingly. When you click the header of another table the previously sorted table goes back being sorted as specified by initsort.
13 Dec 2006: 1.019: Arthur Clemens: Prevent sorting of columns that do no exist.
02 Dec 2006: 1.018: Arthur Clemens: Data rows now start with first datacolor and databgcolor.
26 Nov 2006: 1.017: Arthur Clemens: Better support for tablerules.
24 Nov 2006: 1.016: Arthur Clemens: Added new attribute cellborder.
25 Oct 2006: 1.015: Arthur Clemens: Added support for background colors of sorted column. Columns can be unsorted - sorting order is now: sort ascending, sort descending, unsort. Added attributes headervalign and datavalign.
16 Aug 2006: Michael Daum: Added CSS support for even/odd table rows
13 Dec 2005: Arthur Clemens: Added support for id, summary and caption
05 Mar 2005: 1.014: Crawford Currie eliminated deprecated handlers for Dakar
01 Aug 2004: Arthur Clemens: Added CSS support for first column and ascending/descending table headers
21 Mar 2004: PTh: Internal change: Fixed reference to unofficial variable
01 Jan 2004: PTh: Alternating data row colors restart again after each header row
01 Dec 2003: PTh: Fixed error when footerrows was specified on an empty table, contributed by TWiki:Main/PaulineCheung
24 May 2003: PTh: New |^| rule for multi row span (TWiki:Main/WalterMundt); added tableframe and tablerules (TWiki:Main/JohannesMartin); ignore columnwidths for multi column span; validate headerrows and footerrows (TWiki:Main/DarrylGreen); fixed link color problem and up/down icon color problem for dark header background
17 Dec 2002: PTh: Removed individual table Plugin settings; added TABLEATTRIBUTES Plugins setting and TABLEATTRIBUTES preferences setting
15 Dec 2002: PTh: Added headerrows and footerrows params (TWiki:Main/DarrylGreen, TWiki:Main/WoutMertens); added tablewidth and columnwidths params (TWiki:Main/ThorstenSommermann)
09 Dec 2002: PTh: Added headercolor and datacolor parameters
05 Jun 2002: PTh: Added "none" value to databg parameter (suggested by TWiki:Main/TaitCyrus); fixed sorting by stripping HTML tags, removing links and making sort ignore case (suggested by TWiki:Main/ShawnBradford)
13 Mar 2002: PTh: Added TWiki:Main/ShawnBradford 's initsort and initdirection
12 Mar 2002: PTh: Added valign, headeralign and dataalign; fixed bug of swapped cellpadding/cellspacing; fixed warning of uninitialized value
05 Jan 2002: PTh: Fixed sorting bug of cells with leading white space
06 Dec 2001: PTh: Fixed date sorting bug
03 Dec 2001 PTh: Fixed sort="off" bug and more
29 Nov 2001: PTh: Fixed Perl warnings
16 Nov 2001: PTh: Added table border, cell spacing, cell padding, gif files
07 Oct 2001: JT: Initial version
CPAN Dependencies: none
Other Dependencies: none
Perl Version: 5.0
Plugin Home: http://TWiki.org/cgi-bin/view/Plugins/TablePlugin
Feedback: http://TWiki.org/cgi-bin/view/Plugins/TablePluginDev
Appraisal: http://TWiki.org/cgi-bin/view/Plugins/TablePluginAppraisal

Related Topics: VarTABLE, TWikiPreferences, TWikiPlugins, StandardColors

Edit | Attach | Print version | History: r33 < r32 < r31 < r30 < r29 | Backlinks | Raw View | Raw edit | More topic actions
Copyright © 1999-2024 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding The Caboteria? Send feedback
Note: Please contribute updates to this topic on TWiki.org at TWiki:TWiki.TablePlugin.