What is required to get eea.facetednavigation Plone 5 compatible?


I am investigating what still needs to be done to get eea.facetednavigation Plone 5 compatible.
Has anyone yet tried to integrate this product into their Plone 5 site?

At the moment I can install the product but I do not see the action(s) in the toolbar to enable its features.
Trying to enable either faceted navigation or faceted search via hacking the url like one would in a Plone 4 site:
yields no results.

I'm using Plone 5.0.4

There are some specific Plone 5 issues listed which would imply that someone (@karalics in this case) was able to enable the functionality of the product and then ran into further issues?

I also don't know how much of a factor it is that there is currently (to my limited knowledge) no support for dexterity?

Iirc we had it working with dx. But I don't have access to that product any more.

I worked with @karalics on this. If you turn off csrf protection most things seem to work on P5. We switched to a custom AngularJS implementation, so we stopped porting the product.

ok, thanks for the feedback.

Thanks, can I ask, how did you switch off the csrf protection on Plone 5?
using export PLONE_CSRF_DISABLED=true in your terminal?
as specified in https://github.com/plone/plone.protect/

I do this but I still do not see a way to enable the faceted search via the actions toolbar (once the eea.facetednavigation product is installed)

The faceted actions are actually in place as far as I can see:

$ docker run -it --rm -p 8080:8080 -e BUILDOUT_EGGS=eea.facetednavigation plone/plone

Folder actions:

And clicking on Enable faceted navigation actually enables it:

But still, it's not functional. It fails with:

 - Expression: "here/global_defines/macros/defines"
 - Filename:   ... y2.7.egg/eea/facetednavigation/browser/template/query.pt
 - Location:   (line 1: col 24)
 - Source:     ... lock use-macro="here/global_defines/macros/defines" />

Also the Configure Faceted Navigation action is missing and directly accessing configure_faceted.html fails with:

 - Expression: "python:view.get_schema(criterion)"
 - Filename:   ... .egg/eea/facetednavigation/browser/template/configure.pt
 - Location:   (line 134: col 13)
 - Source:     schema python:view.get_schema(criterion);"
 - Expression: "here/global_defines/macros/defines"
 - Filename:   ... on-8.8-py2.7.egg/eea/facetednavigation/widgets/schema.pt
 - Location:   (line 1: col 24)
 - Source:     ... lock use-macro="here/global_defines/macros/defines" />

Thus, it's far from being Plone 5 ready.

What's needed to be done:

  • Migrate Faceted Widgets schema from Archetypes to z3c.form
  • Re-organize CSS/JS resources in bundles.
  • Upgrade tests to plone.app.testing (And maybe add some robot framework tests)
  • Cleanup backward compatibility code (we can use different branch for Plone 4)

I'm not sure that I will be able to do it myself in the near future, but I'll actively supervise and review any pull request from you guys.

Thank you for being such a great community!!!

1 Like

For simpler use cases I have developed https://github.com/collective/collective.portlet.collectionfilter which can also be used for faceted navigation.

collective.portlet.collectionfilter filters on catalog metadata of collection results. It provides a filter portlet which presents grouped metadata from one metadata column and a search portlet, which filters on SearchableText. You can use multiple filter portlets, which filters on all selected terms.

Currently you have to configure the available metadata columns, it only provides a portlet and multiple filter terms per filter portlet are not possible yet.
I want to extend it so automatically provide filters, use a tile and improve the navigation option.
I'd also love to have elastic search support.

This might also fit your use case. You can see it in action here (website is in german): http://amkumma.at/veranstaltungen/veranstaltungenamkumma/event_listing?mode=past

1 Like

I was in communication with @sally from jazkarta and we agree that it would be best to funnel some money towards Eau de Web and have them implement the changes themselves. I'm currently waiting on the greenlighting of a project that requires eea.facetednavigation in Plone 5. If others are in the same position the necessary funds would probably be easily thrown together. Contact me if you have a project with a little budget for this and I'll coordinate this.

I added the issues mentions by @avoinea as tickets in https://github.com/eea/eea.facetednavigation/issues so everyone can also chip away at them individually.

1 Like

Thanks @pbauer. @sally informed me of this collective effort to fund Eau de Web for a P5 compatible product but only after I had started this thread.

Side note: I will be off the grid for about a week so I wont be able to check any replies (if any)

Thanks @avoinea, that is what I was expecting to see. I have tried your docker method and can confirm that I see the two extra action buttons in the actions toolbar as shown in your screenshots.

When I used the 5.0.4. unified installer and explicitly added the latest sources from the eea github repo in my buildout.
eea.facetednavigation = git git@github.com:eea/eea.facetednavigation.git
eea.jquery = git git@github.com:eea/eea.jquery.git

I could not see the 2 options in the actions bar.

I was able to install the product and even see the faceted.configure object in portal_actions:

but nothing eea related in the actions bar.

Just to point, on september we needed to deliver a plone5 with eea.facetednavigation on production, configure.html was not critial for us so we did a "hack" to deliver it : https://github.com/collective/eea.facetednavigation/commits/plone5-protect

I've been pushing some changes to that branch so now if you install plone5.0.4 with default profile from archetypes and base profile from ATCT it works!

1 Like

whats the current state here?

i want to use this, or something similar to filter contenttypes, indexed fields (like a date, sizes, formats, keys from a dynamic growing vocabulary similar to tags - i have those kind of things in use), ...

all in plone 5 all in dexterity. whats the state over all?

plone4 with atct -> yes
plone4 with dx -> yes?
plone5 with atct -> yes?
plone5 with dx -> no?

i started a new project and wanted to go the whole new and shiny way. plone5, dx. clean and neat.

possible or not?
other advices?

I think nobody knows for sure; I took a quick look at the CI setup and I found it a little bit outdated: it only runs against Plone 4.3.7 using Python 2.6.

so, first step must be to contact the maintainers and ask for a new test setup that allows testing the package against different Plone versions using different test fixtures.

in our own packages, we mainly test for Archetypes in Plone 4 and for Dexterity in Plone 5. you can take some ideas from a couple of packages that are currently working on both Plone versions by looking at here:

I know eea.facetednavigation works in Plone 4.3 with Dexterity, because we are using it in production in many Government sites over here.

Keeping an add-on compatible with both Plone versions is not an easy task right now. I've been making some advances very slowly reporting all issues I have found: today, for instance, I opened 2 new bug reports after testing collective.liveblog in Plone 5.

IMHO, eea.facetednavigation (or a fork) should me incorporated into the Plone bundle, and its development should be managed as "included in Plone". Maybe even the standard Plone search results could be shown as a eea.facetednavigation page.

For today's current technology, faceted search seems like basic standard. Users are used to that kind of flexibility in drilling into search results. Even Google has some faceted search features now in their search tools.

That add-on makes it really flexible. And it is like the dream match for Dexterity. Site Admins can create arbitrary content types TTW, with custom metadata schemas, so it seems logical that they could create TTW powerful matching search forms.

1 Like

@pbauer any news about a possible crowfunding for eea.facetednavigation Plone 5 compatibility ?
My university can contribute a little.

My client just greenlighted funds for migration eea.facetednavigation to Plone 5. We'll ask eau-de-web to implement it targeting 5.0.4. and 5.1.x.


very cool!

i will currently have to step back to plone4 and build contenttypes. afterwards i will move to plone5 and start theming :slight_smile:

@pbauer great news, thanks!

@pbauer @avoinea
I was just wondering what the status of this work is and if there is any ETA for a release?

1 Like