[Erp5-report] r17171 - /erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Oct 24 16:39:48 CEST 2007


Author: jerome
Date: Wed Oct 24 16:39:48 2007
New Revision: 17171

URL: http://svn.erp5.org?rev=17171&view=rev
Log:
External method to change workflow state variable on Career documents


Modified:
    erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py

Modified: erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py?rev=17171&r1=17170&r2=17171&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py (original)
+++ erp5/trunk/products/ERP5/Extensions/CheckPortalTypes.py Wed Oct 24 16:39:48 2007
@@ -1,5 +1,8 @@
 from Globals import get_request
+from Acquisition import aq_base
+from Globals import PersistentMapping
 from Products.CMFCore.utils import getToolByName
+
 
 def fixProductNames(self, REQUEST=None):
   msg = ''
@@ -81,3 +84,18 @@
     # reindexing after ...
     newobj.activate(after_method_id='unindexObject').recursiveReindexObject()
 
+
+def updateCareerValidationState(self):
+  """Career workflow changed its state variable name in r17169
+  """
+  module = self.getPortalObject().person_module
+  for person in self.getPortalObject().person_module.contentValues(
+                              filter=dict(portal_type='Person')):
+    for career in person.contentValues(filter=dict(portal_type='Career')):
+      if getattr(aq_base(career), 'workflow_history', None) is None:
+        continue
+      for line in career.workflow_history['career_workflow']:
+        if 'state' in line:
+          line['validation_state'] = line.pop('state')
+      career.reindexObject()
+    




More information about the Erp5-report mailing list