[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/upgrade/ Added upgrade step to finish the LP397795 change.
Hanno Schlichting
hannosch at hannosch.eu
Fri Nov 13 10:51:18 EST 2009
Log message for revision 105609:
Added upgrade step to finish the LP397795 change.
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/upgrade/configure.zcml
U Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to22.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/upgrade/configure.zcml
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/upgrade/configure.zcml 2009-11-13 15:00:13 UTC (rev 105608)
+++ Products.CMFDefault/trunk/Products/CMFDefault/upgrade/configure.zcml 2009-11-13 15:51:17 UTC (rev 105609)
@@ -83,6 +83,12 @@
checker=".to22.check_action_icons"
/>
+ <genericsetup:upgradeStep
+ title="Convert icon expressions to new type property"
+ handler=".to22.convert_type_icons"
+ checker=".to22.check_type_icons"
+ />
+
</genericsetup:upgradeSteps>
<genericsetup:upgradeStep
Modified: Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to22.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to22.py 2009-11-13 15:00:13 UTC (rev 105608)
+++ Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to22.py 2009-11-13 15:51:17 UTC (rev 105609)
@@ -124,3 +124,24 @@
changed = True
if changed:
logger.info("TypeInfo '%s' changed." % ti.getId())
+
+def check_type_icons(tool):
+ """2.1.x to 2.2.0 upgrade step checker
+ """
+ ttool = getToolByName(tool, 'portal_types')
+ for ti in ttool.listTypeInfo():
+ if ti.content_icon and not ti.icon_expr:
+ return True
+ return False
+
+def convert_type_icons(tool):
+ """2.1.x to 2.2.0 upgrade step handler
+ """
+ logger = logging.getLogger('GenericSetup.upgrade')
+ ttool = getToolByName(tool, 'portal_types')
+ for ti in ttool.listTypeInfo():
+ if ti.content_icon and not ti.icon_expr:
+ icon_expr = 'string:${portal_url}/%s' % ti.content_icon
+ ti._setPropValue('icon_expr', icon_expr)
+ ti._setPropValue('content_icon', '')
+ logger.info("TypeInfo '%s' changed." % ti.getId())
More information about the checkins
mailing list