Skip to main content

eea.facetednavigation widget that enables selecting a collection (among several) as base filter

Project description

https://travis-ci.org/collective/collective.eeafaceted.collectionwidget.svg https://coveralls.io/repos/github/collective/collective.eeafaceted.collectionwidget/badge.svg?branch=master

collective.eeafaceted.collectionwidget

Package adding a widget for eea.facetednavigation that list collections as base searches

How it works

Once installed, a new widget Collection Link is available while configuring the faceted navigation. If you add Collections to a folder on which faceted navigation is enabled, the widget will display the found Collections and use it as base searches. A special content DashboardCollection is also provided, it is based on the Collection but use additional behaviors :

  • The ‘DashboardCollection’ behavior that provides an extra field showNumberOfItems, making it possible to display the counter on a per DashboardCollection basis;

  • The ‘TAL condition’ behavior that adds a field into which defining a TAL expression that will make it possible to hide or show a Collection in the widget.

Installation

To install collective.eeafaceted.collectionwidget you simply add collective.eeafaceted.collectionwidget to the list of eggs in your buildout, use make run to launch buildout and start Plone. Then, install collective.eeafaceted.collectionwidget using the Add-ons control panel.

Configuration

All that is necessary when adding this kind of widget in a faceted navigation is to enter a name for the displayed widget and to select the vocabulary collective.eeafaceted.collectionwidget.collectionvocabulary. It will automatically display the Collections contained in the folder the faceted navigation is configured on. It is also possible to group Collections by category, to do so, instead of adding the Collections directly in the folder, you can create a subfolder that will contain the Collections.

eea.facetednavigation version

From version 1.0, the widget requires at least eea.facetednavigation 10.0 where widget is built using z3c.form. If you are using eea.facetednavigation < 10.0, you need to use a version of collective.eeafaceted.collectionwidget < 1.0.

Changelog

1.17 (2024-04-10)

  • Added DashboardCollection.brains_results that will return the result of the query as brains, this is used to make the @@folder_contents view work for DashboardCollection in imio.helpers. [gbastien]

1.16 (2023-07-27)

  • Use default value if available and if there is no parameter in request [mpeeters]

  • Fix for Python 3 compatibilty [mpeeters]

1.15 (2023-07-03)

  • Ensure that parent can be displayed if hide_category is True and without category [mpeeters]

  • Add hide_category option (False by default) to add the possibility to hide category titles [mpeeters]

1.14 (2022-01-10)

  • Fixed utils.getCurrentCollection, when collectionUID retrieved from facetedQuery form value, we have a list of values. [gbastien]

1.13 (2022-01-03)

  • Use an alias for __call__ methods that use ram.cache in vocabulary.py this way, the key generated for the ram.cache storage is different. [gbastien]

1.12 (2021-12-06)

  • Added ram.cache for CollectionCategoryVocabulary to avoid query at each request as query is using a sort_on=getObjPositionInParent which is very slow. [gbastien]

  • Override DashboardCollection query computation that by default in plone.app.contenttypes and plone.app.querystring will arbitrary add a path index in the query, and again, the path index is very slow and just not necessary. [gbastien]

  • Use unrestricted catalog query when possible. [gbastien]

  • Optimized the catalog query that compute the number_of_items counters. [gbastien]

1.11 (2020-05-28)

  • Added real_context parameter to CollectionVocabulary. [sgeulette]

  • Use ITALCondition behavior to evaluate the tal_condition expression so ITALCondition.complete_extra_expr_ctx is taken into account. [gbastien]

1.10 (2019-09-12)

  • Invalidate collective.eeafaceted.collectionwidget.cachedcollectionvocabulary if portal_url changed, this can be the case when application is accessed by same user from different URi. [gbastien]

1.9 (2019-08-23)

  • Added parameter raise_on_error=True to utils._get_criterion so it will return None in case passed context is not a faceted context instead raising an error. [gbastien]

1.8 (2019-08-13)

  • Do not store the collection object in term.value of vocabulary CollectionVocabulary because it can be ram cached (in CachedCollectionVocabulary for example) and ram caching methods returning objects is a bad idea. [gbastien]

  • Added caching=True parameter to utils.getCurrentCollection so it is computed one time by request for a given faceted_context. [gbastien]

1.7 (2019-03-28)

  • Added parameter RenderTermView.compute_count_on_init, True by default that will do the collections count be computed when the widget is rendered. This makes it possible to disable it. [gbastien]

  • Fix an issue with the widget used in combination with collective.solr [mpeeters]

  • In utils._updateDefaultCollectionFor use ICriteria.edit to change value as it handles persistence instead doing it ourselves. After value is changed, trigger FacetedGlobalSettingsChangedEvent. [gbastien]

1.6 (2019-01-03)

  • Avoid error when deleting site. [sgeulette]

  • Factorized code called in widget.__call__ in widget._initialize_widget method so it is easy to call from outside. [gbastien]

1.5 (2018-12-18)

  • Temporary fix to not crash in KeptCriteria adapter when managing daterange widget. For now, if index is a DateIndex and values is a list, we do not keep criteria for it. [gbastien]

1.4 (2018-11-29)

  • Migrate IFacetedNavigable criterias, replacing old vocabulary by cachedcollectionvocabulary. [sgeulette]

  • Added method RenderCategoryView._get_category_template to formalize how to get template used to display a term category. [gbastien]

1.3 (2018-11-20)

  • Removed AT Collection creation from tests as it is not used and it fails because of a bug in plone.api==1.8.4. See https://github.com/plone/plone.api/pull/414 [gbastien]

  • Define a csscompilation name for collection widget own CSS ressource. Do redefine as little as possible when including widget view/edit css/js into eea.facetednavigation existing bundles. [gbastien]

  • Moved CachedCollectionVocabulary from imio.dashboard, now named collective.eeafaceted.collectionwidget.cachedcollectionvocabulary. Moved dashboard collection related events. [sgeulette]

1.2 (2018-09-04)

  • Added translations for Enabled?. [gbastien]

1.1 (2018-06-22)

  • Corrected bad release, include last code. [gbastien]

1.0 (2018-06-20)

  • Make widget compatible with eea.facetednavigation >= 10.0. This makes it no more compatible with older version. [gbastien]

  • Make package installable on both Plone4 and Plone5. [gbastien]

  • Rely on plone.app.contenttypes instead plone.app.collection. [gbastien]

  • Do not break to display the facetednavigation_view if no collection widget defined, it is the case when just enabling the faceted navigation on a new folder. [gbastien]

  • Added field enabled (default=True) on a DashboardCollection make it possible to disable it so it is no more displayed in the collection widget (portlet). We specifically do not use a workflow for DashboardCollection. [gbastien]

0.9 (2018-05-25)

  • Moved here some methods from imio.dashboard: _get_criterion, getCollectionLinkCriterion, getCurrentCollection [sgeulette]

  • facetednavigation_view override to manage default collection widget redirection [sgeulette]

  • Added portal attribute on category view. [sgeulette]

0.8 (2018-05-03)

  • Fix wrong release version 0.7. [gbastien]

0.7 (2018-05-03)

  • Removed useless parameter query from CollectionVocabulary.__call__. [gbastien]

  • Use zope.globalrequest.getRequest and not context.REQUEST to get the REQUEST. [gbastien]

0.6 (2016-12-07)

  • Add an option force_redirect_to in CollectionVocabulary to force generating no_redirect=1 urls for all collections. [vincentfretin]

  • Don’t modify the title of the page if the h1 has class dontupdate. [vincentfretin]

  • Fix bug with DateTime in kept_criteria_as_json. [cedricmessiant]

0.5 (2016-05-13)

  • Added plone.app.collection as a real dependency, this way it is present and we make sure that the profile is installed. [gbastien]

0.4 (2016-03-29)

  • Adapted tests for eea.facetednavigation 8.8, moved to the collective, prepare for release on pypi.python.org. [gbastien]

0.3 (2016-03-03)

  • Display number of collection items in the term view. Override display_number_of_items method if you want to alter this behaviour. [cedricmessiant]

0.2 (2015-09-03)

  • The context for @@render_collection_widget_category is now the category (folder) and the context for @@render_collection_widget_term is the collection. (closes #11677) [vincentfretin]

  • When generating link to sub faceted, make sure every default values are correctly initialized, especially value of the Collection widget for which the id could be different than current faceted Collection widget id [gbastien]

  • If we use functionnality of sub folders where faceted navigation is enabled, and the default collection is on one of these subfolders, do not redirect to this default collection if we use the ‘folder_contents’ of the root folder or user is systematically redirected to the subfolder and it is not possible anymore to access on the root folder [gbastien]

  • Added portal_url attribute in RenderCategoryView [sgeulette]

0.1 (2015-07-14)

  • Initial release. [IMIO]

Project details


Download files

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

Source Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page