[Erp5-report] r33622 kazuhiko - /erp5/trunk/products/ERP5/Document/BusinessTemplate.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Thu Mar 11 10:44:10 CET 2010
Author: kazuhiko
Date: Thu Mar 11 10:44:07 2010
New Revision: 33622
URL: http://svn.erp5.org?rev=33622&view=rev
Log:
delete removed workflows from the workflow chain in WorkflowTemplateItem.uninstall().
Modified:
erp5/trunk/products/ERP5/Document/BusinessTemplate.py
Modified: erp5/trunk/products/ERP5/Document/BusinessTemplate.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Document/BusinessTemplate.py?rev=33622&r1=33621&r2=33622&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] (original)
+++ erp5/trunk/products/ERP5/Document/BusinessTemplate.py [utf8] Thu Mar 11 10:44:07 2010
@@ -1654,6 +1654,21 @@
else:
ObjectTemplateItem.install(self, context, trashbin, **kw)
+ def uninstall(self, context, **kw):
+ object_path = kw.get('object_path', None)
+ if object_path is not None:
+ object_keys = [object_path]
+ else:
+ object_keys = self._archive.keys()
+ removed_workflow_id_list = set([x.split('/', 1)[1] for x in object_keys])
+ (default_chain, chain_dict) = getChainByType(context)
+ for portal_type, workflow_ids in chain_dict.iteritems():
+ workflow_ids = set([x.strip() for x in workflow_ids.split(',')]) - \
+ removed_workflow_id_list
+ chain_dict[portal_type] = ', '.join(workflow_ids)
+ context.portal_workflow.manage_changeWorkflows(default_chain,
+ props=chain_dict)
+ ObjectTemplateItem.uninstall(self, context, **kw)
class PortalTypeTemplateItem(ObjectTemplateItem):
More information about the Erp5-report
mailing list