bda.resultduplexer

by Robert Niederreiter last modified Feb 16, 2011 02:03 AM

bda.resultduplexer provides duplexing of search results in plone.

Project Description

bda.resultduplexer

bda.resultduplexer

Overview

bda.resultduplexer provides duplexing of search results in plone. The original intention were the needs to modify the url for proxied contents (see bda.contentproxy package). This is also the behaviour of the default duplexer. It looks if the user is authenticated, and if so, leave the object url as is, otherwise modify the url pointing to the content proxy view of the object.

To implement your own duplexing logic, you have to provide an IResultDuplexer implementing object. See bda.resultduplexer.interfaces for the API documentation and bda.resultduplexer.duplexer how such an implementation can look like.

To describe duplexed results, brain wrapper objects are used. The default implementation modifies the URL of an object, if you want to modify anything else of the result, you have to provide such an IBrainWrapper implementing object as well.

Note

This module patches ATTopic!. This must be done to make the result duplexer work on topics by calling:

results = IResultDuplexer(self).prepareResults(results)

For the common search behaviour, livesearch_reply and queryCatalog are replaced. To be able to call the duplexer in restricted code, there is a browser view implementation simply loops the call through:

duplexer = context.restrictedTraverse('@@restrictedresultduplexer')
results = duplexer.prepareResults(results)

Installation

  1. Make the egg available in your instance,
  2. Import the bda.resultduplexer extension profile in your plone instance.

This Product is tested with Plone 3.0

Credits

Licence

  • GNU General Public Licence 2.0 or later

Current Release

No stable release available yet.

If you are interested in getting the source code of this project, you can get it from the Code repository .

All Releases

Version Released Description Compatibility Status

Comments (0)