[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py Added fallbacks for migrating from CMF 2.2 sites.
Charlie Clark
cvs-admin at zope.org
Thu Mar 22 13:06:48 UTC 2012
Log message for revision 124690:
Added fallbacks for migrating from CMF 2.2 sites.
Changed:
U Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py 2012-03-22 11:14:22 UTC (rev 124689)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py 2012-03-22 13:06:44 UTC (rev 124690)
@@ -13,9 +13,11 @@
"""
"""
-from zope.component import getUtility
+from zope.component import getUtility, ComponentLookupError
from zope.component import queryUtility
+from Acquisition import aq_get
+
from Products.CMFCore.interfaces import IActionsTool
from Products.CMFCore.interfaces import IMembershipTool
from Products.CMFCore.interfaces import IPropertiesTool
@@ -60,23 +62,39 @@
@property
@memoize
def utool(self):
- return getUtility(IURLTool)
+ try:
+ return getUtility(IURLTool)
+ except ComponentLookupError:
+ # BBB: fallback for CMF 2.2 instances
+ return aq_get(self.context, 'portal_url')
@property
@memoize
def mtool(self):
- return getUtility(IMembershipTool)
+ try:
+ return getUtility(IMembershipTool)
+ except ComponentLookupError:
+ # BBB: fallback for CMF 2.2 instances
+ return aq_get(self.context, 'portal_membership')
@property
@memoize
def atool(self):
- return getUtility(IActionsTool)
+ try:
+ return getUtility(IActionsTool)
+ except ComponentLookupError:
+ # BBB: fallback for CMF 2.2 instances
+ return aq_get(self.context, 'portal_actions')
@property
@memoize
def wtool(self):
- return getUtility(IWorkflowTool)
-
+ try:
+ return getUtility(IWorkflowTool)
+ except ComponentLookupError:
+ # BBB: fallback for CMF 2.2 instances
+ return aq_get(self.context, 'portal_workflow')
+
@property
@memoize
def syndtool(self):
More information about the checkins
mailing list