Searchable Collections with Flexigrid
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 requires JQuery only (built into plone 4) no JQuery UI
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 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.
- search or sort by title (see above)
- 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.
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
Restart Plone and activate the product in Plones Add-on configuration section.
- Code repository
- Questions and comments
- Bug Reports
- add flexitopic portlet
- use one table for flexigrid + search resuts table - no more noscript tag
- use UID instead of getId for a cells id (fixes cell misalignments)
- do not cache results (persistent objects cannot be cached)
- move bodytext above searchform
- upgrade js registry
- do not use description as html attribute title on Title
- bug fixes
- cache search results
- support for plone.app.collection
- add caching
- make date columns smaller
- remove minimize button from table
- plone 4.1 compatible
- upgrade flexigrid to ver 1.1
- 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
- First public release
- Add slider to query for date ranges
- Caching for expensive catalog queries
- Initial release
- Flexigrid to display search results
- Generate search form from collection criteria