collective.flexitopic

Searchable Collections with Flexigrid


License
GPL-2.0+
Install
pip install collective.flexitopic==0.7

Documentation

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

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.

Installation

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

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