Skip to main content
This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Searchable Collections with Flexigrid

Project Description
Introduction
============

Flexitopic integrates the easy use of plone collections with a Flexigrid_
AJAX view. The criteria from the topic are taken to construct a simple
query form to narrow down a search inside a collection. Subtopics are
displayed inside tabs of the (old style) collection.
It works with new (`plone.app.collection.Collection`) and
old (`Products.ATContentTypes.ATTopic`) style collections


* Flexitopic does not install a new content type but just adds an additional view to the collection type.
* it degrades for non javascript browsers to a simple table - (almost) same usability, no information loss.
* it requires JQuery only (built into plone 4) no JQuery UI
* lightweight JS
* Flexigrid_: 27 KB packed
* JSlider_: 22 KB packed


.. _Flexigrid: http://flexigrid.info/
.. _JSlider: http://egorkhmelev.github.com/jslider/

Usage
=====

Add a collection. Criteria of the collection will be used to build
a form to narrow down your search inside the collection. If the criterion (the
index in portal_catalog) is sortable you can sort this column. Not all criteria
types can be used as input for Flexi-collection so beware.

Search Form
------------

Search Text
full text search inside the collections. If you leave the
criterion value empty users can search for content containing that text, if
the value is not empty it will search for this text plus the text the user
supplied.
Title
search or sort by title (see above)
Description
search description only (search see above, no sorting here!)
Dates (effective, created, ...)
will be converted to date ranges and can be selected with the JQuery
JSlider_ Plugin
Location (path index)
will not be displayed in the search form and always be applied to the query
Keyword Indices (like tags)
a drop down list will be generated to narrow the search down

- if the criterion operator is AND the list will contain all unique
values of the index minus the ones you selected, the query will search
for all terms that match your criteria plus the user input (old style
ciolletions only)
- if the criterion is OR the terms you selected will be display in the
selection list. The search will be for the user supplied input only.
This is the behaviour for new style collections.

The output is always a table with the fields you supplied in the
``Table Columns`` of the collection, no matter if ``Display as Table``
is checked or not.

Subtopics (old style collections only)
---------------------------------------

Flexitopic will display subtopics as tabs on top of the page. The first
tab is the description of the topic, subtopics will occupy the following
tabs. Subtopics will always be displayed as (plain html) tables defined
by the criteria, ``Table Columns`` and the ``Number of Items`` of the
subtopic.

Portlets
---------

You can display Topics and Collections in a Flexitopic portlet.
The Portlet is mainly meant to be used with products that let you
dispay portlets inside the content area such as ContentWellPortlets_
or PortletPages_ but it may be usefull as a 'real' portlet in edge cases
as well.

.. _ContentWellPortlets: http://plone.org/products/contentwellportlets
.. _PortletPages: http://plone.org/products/collective.portletpage

Installation
============

This addon can be installed has any other addons, please follow official
documentation_.

.. _documentation: http://plone.org/documentation/kb/installing-add-ons-quick-how-to

Add to buildouts configuration

::

[buildout]
...
eggs =
collective.flexitopic

Re-run buildout, e.g. with

::

$ ./bin/buildout

Restart Plone and activate the product in Plones Add-on configuration
section.


Participation
=============

Code repository
https://github.com/collective/collective.flexitopic/
Questions and comments
mailto:product-developers@lists.plone.org
Bug Reports
https://github.com/collective/collective.flexitopic/issues

Changelog
=========

0.7.1 (2014-08-28)
------------------

- update to latest flexigrid javascript [jean]

0.7 (2013/12/04)
----------------

- add flexitopic portlet
- use one table for flexigrid + search resuts table - no more noscript tag

0.6.2 (2013/09/06)
-------------------

- use UID instead of getId for a cells id (fixes cell misalignments)

0.6.1 (2013/09/05)
-------------------

- do not cache results (persistent objects cannot be cached)

0.6 (2013/09/05)
----------------

- move bodytext above searchform
- use_view_actions
- upgrade js registry
- do not use description as html attribute title on Title
- bug fixes
- cache search results


0.5 (2013/08/30)
----------------

- support for plone.app.collection
- add caching

0.4 (2011/12/06)
----------------

- make date columns smaller
- remove minimize button from table


0.3 (2011/06/17)
-----------------

- plone 4.1 compatible
- upgrade flexigrid to ver 1.1


0.2 (2011/04/05)
-----------------

- do not display review state in searchform
- split monolithic flexitopic_view into several viewlets
- get items per page out of topic
- render html table into a noscript area, flexigrid into an empty table


0.1 (2011/01/27)
-----------------

- First public release
- Add slider to query for date ranges
- Caching for expensive catalog queries

0.1dev (unreleased)
-------------------

- Initial release
- Flexigrid to display search results
- Generate search form from collection criteria
Release History

Release History

This version
History Node

0.7.1

History Node

0.7

History Node

0.6.2

History Node

0.6.1

History Node

0.6

History Node

0.5

History Node

0.4.1

History Node

0.4

History Node

0.3

History Node

0.2.1

History Node

0.2

History Node

0.1

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
collective.flexitopic-0.7.1.zip (125.6 kB) Copy SHA256 Checksum SHA256 Source Aug 28, 2014

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting