A Plone page with an editable table as main content
A new Plone content type similar to the standard Page but with a table as main content.
Table of contents
This product want to give to site members a simple way to manage a page with a table inside in a collaborative way. To be more precise, it's focused on contents where the table is the main scope of the page.
The only other option is to create the page using the WYSIWYG editor (like TinyMCE), then leave to editors power to modify it, but:
- using TinyMCE commands for table is not so easy (users sometimes mess up your pre-defined layout)
- you can't prohibit users to delete or change rows added from other users, or adding new column you don't want.
If you need to beat those limits but you still simply need a Plone page, this is product is probably what you need.
If you need to store a huge amount of data, you should probably look for other solutions.
After installation you will see a new addable content type: the Page with Table.
Some fields of this new content types are very similar to Page ones, although the "Body Text" field is splitted in two separated sections (text before and after the table).
The most important field is "Columns", where you can define the column structure of you table.
For every column you can define some information like header's content and other description, but you must also define the type of data in the column.
Right now you can choose from:
- A simple line of text, the most common type.
- A textarea, for saving more text and take care of carriage returns.
- Still a simple line of thext, but user must choose it from a vocabulary you will define (in the proper column of the configuration).
- A link to a file in the site. See below.
- Same as File above, but for multiple files.
- A link to an URL, or an internal site document. It use Plone reference browser native widget.
Adding new type of column is not hard, but remember to stay simple: we don't want to rewrite PloneFormGen from scratch! Also: there's no validation!
You can add as many columns as you want; users that will fill your table won't be able to change what you have defined.
Configuration is not changing anything in your layour, but users with Contributor role on this document will see a new tab: "Edit table".
When accessing the "Edit table data" view, users will be able to add new rows to the table and edit their own rows. The form given to the user is generated using the configuration options that the document creator defined before.
- Every added row is put at the end of the table or at the end of section (see below)
- Every Contributor is able to edit or delete his own rows
- Users with "Editor" roles are able to edit or delete all rows
- Users with "Editor" roles are able change row order
When switching back to main document view the generated table is part of the document body text.
Users with power of configuring the table can also add a special type or row: Label. Apart the UI changes, labels break the table in groups of logical rows: every group start at the position of the label at end at the next label (or at the end of the table).
If one or more labels are used, contributors will be able to add new rows at the end of the section instead of adding only at the end of the table.
Data stored in the table can be downloaded, and optionally you can display a download link also to page visitors (activate the "Show download link for data" inside "Settings"). When the download icon is used in the "Edit table" view, downloaded data is compatible to the upload CSV feature described above (columns ids are used instead of titles, contents uids instead of URL to referenced contents, ...)
Contributors can also upload data using a CSV file. The file must provide a row with column ids defined in the configuration. Columns with unknow id are ignored.
Columns of type file(s) are the most complex.
When adding or editing a row the user is able to upload new files, creating a new Plone File content, or selecting existing files from the site.
In both cases permissions matters: the user must have permisson of adding new file in the storage folder or see it. The storage folder is configured by the document creator.
When rendering the table, a link to download the file is displayed.
There are at least two other products for Plone that are focused on table generation:
- This product is focused on the editing part (and the use of DataTables jQuery plugin is nice), but it dowsn't work on Plone 3 and you have no way of limit the power of users on the table.
- Very powerful, modular and extensible. It's using PloneFormGen as table configuration and can store a lot of data. Unluckily it has a lot of dependencies and it won't run on Plone 3.
This product can be used with al version of Plone from 3.3 to 4.3.
For Plone 3.3 you need some special configuration like:
- A custom branch of DataGridField where we backported some new features from 1.8 branch
- Available table styles are taken from TinyMCE configuration, so you must use it instead of Kupu
- No versioning support is available
Developed with the support of:
All of them supports the PloneGov initiative.
[X] Unit tests
[X] End-user documentation
[ ] Internal documentation (documentation, interfaces, etc.)
[X] Existed and maintained for at least 6 months
[ ] Installs and uninstalls cleanly
[ ] Code structure follows best practice
Released Nov 14, 2013 — tested with Plone 4.3, Plone 4.2, Plone 4.1, Plone 4, Plone 3
Many new features (mainly: new columns types)
More about this release…
- Get collective.tablepage for all platforms
- If you are using Plone 3.2 or higher, you probably want to install this product with buildout. See our tutorial on installing add-on products with buildout for more information.
|0.4||Nov 14, 2013||Many new features (mainly: new columns types) More about this release…||
|0.3||Oct 18, 2013||Bugfix release and new features More about this release…||
|0.2||Oct 11, 2013||Bugfix and some minor changes More about this release…||
|0.1.2||Sep 27, 2013||Bugfix More about this release…||
|0.1.1||Sep 23, 2013||Bugfix release More about this release…||
|0.1||First release More about this release…||