A recent change (link to Google Cache as d.p.org seems to be down right now) to the way Plone calculates the review list for the full_review_list
view. In order to support LinguaPlone better, WorkflowTool now explicitly adds a Language='all'
to the query used to retrieve a worklist, whereas before only results in the user's current language were shown. The code is in Products.CMFPlon开发者_StackOverflow中文版e.WorkflowTool#getWorklistsResults()
.
Is it possible to override this new behaviour to obtain the old behaviour?
We really ought to make that customizable via a ZCML override, but you're right, in that form it's not overridable simply. So no matter what approach you're going to take, you'll have to copy that method and modify it somewhere else and then hook it in so that your customized version takes precedence.
Where do you need to see the changes? Just in the initial review list portlet? In that case, just override the renderer for that portlet, add a method to the new renderer, copy in the code, make your changes, then override the renderer to use the renderer method instead of the one on portal_workflow.
If you want to see the changes in the full review list you click through to from the portlet, then you'll have to use collective.monkeypatcher to patch the method on portal_workflow. I'd recommend against this, since you probably want someplace where users can go to see the full review list with all languages.
精彩评论