From ac14df7027fa99c56f73fc547ba8dd4a1b5b3700 Mon Sep 17 00:00:00 2001 From: Tomas Peterka <tomas.peterka@nexedi.com> Date: Mon, 14 May 2018 16:09:36 +0200 Subject: [PATCH] [erp5_core] Mass Workflow Transition saves some time and memory by early return and iterators --- .../erp5_core/Folder_filterDocumentByWorkflow.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Folder_filterDocumentByWorkflow.py b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Folder_filterDocumentByWorkflow.py index 11511d0fcd..c1d136e9e3 100644 --- a/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Folder_filterDocumentByWorkflow.py +++ b/product/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Folder_filterDocumentByWorkflow.py @@ -3,14 +3,14 @@ portal_catalog = context.getPortalObject().portal_catalog action_tool = context.getPortalObject().portal_actions -document_list = [result.getObject() for result in portal_catalog.searchResults(sort_on=sort_on, limit=limit, **kwargs)] +result_list = portal_catalog.searchResults(sort_on=sort_on, limit=limit, **kwargs) if not workflow_action: # if we have no filter (=workflow action) we return back all documents - return document_list + return result_list filtered_list = [] -for document in document_list: +for document in (result.getObject() for result in result_list): for action in action_tool.listFilteredActionsFor(document).get('workflow', []): if action['id'] == workflow_action: filtered_list.append(document) -- 2.30.9