[Checkins] SVN: Products.CMFDefault/trunk/Products/CMFDefault/ - converted three more tools

Yvo Schubbe y.2011 at wcm-solutions.de
Fri Sep 16 07:18:54 EST 2011


Log message for revision 122821:
  - converted three more tools

Changed:
  U   Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt
  U   Products.CMFDefault/trunk/Products/CMFDefault/DefaultWorkflow.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/authentication.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/preferences.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/search/interfaces.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/search/search.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/history.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/workflow.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/profiles/default/componentregistry.xml
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_content/content_status_modify.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_control/logout.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/logged_in.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/news_box.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/recent_news.py
  UU  Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/rejectItems.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search_form.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/tests/test_DefaultWorkflow.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/tests/test_Discussions.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/tests/test_MembershipTool.py
  U   Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to23.py

-=-
Modified: Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/CHANGES.txt	2011-09-16 12:18:54 UTC (rev 122821)
@@ -5,8 +5,9 @@
 ------------------------
 
 - tools: Converted several tools into utilities.
-  ActionsTool, CookieCrumbler, MemberDataTool, MembershipTool, RegistrationTool
-  and URLTool are now local utilities.
+  ActionsTool, CatalogTool, CookieCrumbler, MemberDataTool, MembershipTool,
+  RegistrationTool, SkinsTool, URLTool and WorkflowTool are now local
+  utilities.
 
 - skins and browser views: setRedirect now checks Action conditions.
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/DefaultWorkflow.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/DefaultWorkflow.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/DefaultWorkflow.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -20,13 +20,14 @@
 from App.class_init import InitializeClass
 from DateTime.DateTime import DateTime
 from zope.component import getUtility
+from zope.component import queryUtility
 from zope.interface import implements
 
+from Products.CMFCore.interfaces import ICatalogTool
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.interfaces import IWorkflowDefinition
 from Products.CMFCore.utils import _checkPermission
 from Products.CMFCore.utils import _modifyPermissionMappings
-from Products.CMFCore.utils import getToolByName
 from Products.CMFCore.utils import SimpleItemWithProperties
 from Products.CMFDefault.exceptions import AccessControl_Unauthorized
 from Products.CMFDefault.permissions import ModifyPortalContent
@@ -151,17 +152,17 @@
             return None
 
         actions = []
-        catalog = getToolByName(self, 'portal_catalog', None)
-        if catalog is None:
+        ctool = queryUtility(ICatalogTool)
+        if ctool is None:
             return actions
 
-        pending = len(catalog.searchResults(review_state='pending'))
+        pending = len(ctool.searchResults(review_state='pending'))
         if pending > 0:
             actions.append(
                 {'name': 'Pending review (%d)' % pending,
                  'url': info.portal_url +
                  '/search?review_state=pending',
-                 'permissions': (ReviewPortalContent, ),
+                 'permissions': (ReviewPortalContent,),
                  'category': 'global'}
                 )
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/authentication.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/authentication.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/authentication.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -39,6 +39,7 @@
 from Products.CMFCore.interfaces import ICookieCrumbler
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.interfaces import IRegistrationTool
+from Products.CMFCore.interfaces import ISkinsTool
 from Products.CMFDefault.browser.utils import ViewBase, memoize
 from Products.CMFDefault.formlib.form import EditFormBase
 from Products.CMFDefault.utils import Message as _
@@ -215,7 +216,7 @@
     template = ViewPageTemplateFile("logged_in.pt")
 
     def set_skin_cookie(self):
-        stool = self._getTool('portal_skins')
+        stool = getUtility(ISkinsTool)
         if stool.updateSkinCookie():
             skinname = stool.getSkinNameFromRequest(self.request)
             stool.changeSkin(skinname, self.request)
@@ -314,7 +315,7 @@
     @memoize
     def clear_skin_cookie(self):
         """Remove skin cookie"""
-        stool = self._getTool('portal_skins')
+        stool = getUtility(ISkinsTool)
         stool.clearSkinCookie()
 
     def __call__(self):

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/preferences.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/preferences.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/membership/preferences.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -26,7 +26,7 @@
 from Products.CMFCore.interfaces import IMember
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.interfaces import IPropertiesTool
-from Products.CMFCore.utils import getToolByName
+from Products.CMFCore.interfaces import ISkinsTool
 from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.formlib.form import SettingsEditFormBase
 from Products.CMFDefault.formlib.schema import EmailLine
@@ -34,7 +34,7 @@
 
 
 def portal_skins(context):
-    stool = getToolByName(context.context._tool, 'portal_skins')
+    stool = getUtility(ISkinsTool)
     return SimpleVocabulary.fromValues(stool.getSkinSelections())
 
 
@@ -123,7 +123,7 @@
     def applyChanges(self, data):
         changes = super(PreferencesFormView, self).applyChanges(data)
         if any('portal_skin' in v for v in changes.itervalues()):
-            stool = self._getTool('portal_skins')
+            stool = getUtility(ISkinsTool)
             stool.updateSkinCookie()
         return changes
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/search/interfaces.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/search/interfaces.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/search/interfaces.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -28,25 +28,26 @@
 from zope.schema.vocabulary import SimpleTerm
 from zope.schema.vocabulary import SimpleVocabulary
 
+from Products.CMFCore.interfaces import ICatalogTool
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.utils import getToolByName
 from Products.CMFDefault.utils import Message as _
 
 def status_vocab(context):
     """Provides a list of workflow states"""
-    catalog = getToolByName(context, 'portal_catalog')
+    ctool = getUtility(ICatalogTool)
     values = [SimpleTerm(None, None, _(u"-- any --"))]
     values += [SimpleTerm(v, v, v)
-               for v in catalog.uniqueValuesFor('review_state')]
+               for v in ctool.uniqueValuesFor('review_state')]
     return SimpleVocabulary(values)
 directlyProvides(status_vocab, IContextSourceBinder)
 
 def subject_vocab(context):
     """Provides a list of subject keywords"""
-    catalog = getToolByName(context, 'portal_catalog')
+    ctool = getUtility(ICatalogTool)
     values = [SimpleTerm(None, None, _(u"-- any --"))]
     values += [SimpleTerm(v, v, v)
-               for v in catalog.uniqueValuesFor('Subject')]
+               for v in ctool.uniqueValuesFor('Subject')]
     return SimpleVocabulary(values)
 directlyProvides(subject_vocab, IContextSourceBinder)
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/search/search.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/search/search.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/search/search.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -19,6 +19,7 @@
 from zope.formlib import form
 
 from .interfaces import ISearchSchema
+from Products.CMFCore.interfaces import ICatalogTool
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFDefault.browser.content.folder import BatchViewBase
 from Products.CMFDefault.browser.content.interfaces import IBatchForm
@@ -72,7 +73,7 @@
     @property
     @memoize
     def catalog(self):
-        return self._getTool('portal_catalog')
+        return getUtility(ICatalogTool)
 
     @property
     @memoize

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/tests/test_ursa.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -22,6 +22,7 @@
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.interfaces import IPropertiesTool
 from Products.CMFCore.interfaces import IURLTool
+from Products.CMFCore.interfaces import IWorkflowTool
 
 
 class UrsineGlobalsTests(unittest.TestCase, PlacelessSetup):
@@ -112,6 +113,7 @@
     def test_wtool(self):
         view = self._makeOne()
         tool = view.context.portal_workflow = DummyWorkflowTool()
+        getSiteManager().registerUtility(tool, IWorkflowTool)
         self.failUnless(view.wtool is tool)
 
     def test_syndtool(self):
@@ -213,7 +215,8 @@
 
     def test_wf_state(self):
         view = self._makeOne()
-        view.context.portal_workflow = DummyWorkflowTool()
+        tool = view.context.portal_workflow = DummyWorkflowTool()
+        getSiteManager().registerUtility(tool, IWorkflowTool)
         self.assertEqual(view.wf_state, 'DUMMY')
 
     def test_page_title_wo_match(self):

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/skins/ursa.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -19,6 +19,7 @@
 from Products.CMFCore.interfaces import IMembershipTool
 from Products.CMFCore.interfaces import IPropertiesTool
 from Products.CMFCore.interfaces import IURLTool
+from Products.CMFCore.interfaces import IWorkflowTool
 from Products.CMFCore.utils import getToolByName
 from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.browser.utils import ViewBase
@@ -65,7 +66,7 @@
     @property
     @memoize
     def wtool(self):
-        return self._getTool('portal_workflow')
+        return getUtility(IWorkflowTool)
         
     @property
     @memoize

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/history.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/history.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/history.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -12,9 +12,12 @@
 ##############################################################################
 """Workflow history view"""
 
-from Products.CMFDefault.utils import Message as _
+from zope.component import getUtility
+
+from Products.CMFCore.interfaces import IWorkflowTool
+from Products.CMFDefault.browser.utils import decode
+from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.browser.utils import ViewBase
-from Products.CMFDefault.browser.utils import memoize, decode
 
 
 class View(ViewBase):
@@ -22,7 +25,7 @@
     @property
     @memoize
     def workflow(self):
-        return self._getTool('portal_workflow')
+        return getUtility(IWorkflowTool)
 
     @decode
     @memoize

Modified: Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/workflow.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/workflow.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/browser/workflow/workflow.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -14,10 +14,12 @@
 """
 
 from Products.Five.browser.pagetemplatefile import ViewPageTemplateFile
+from zope.component import getUtility
 from zope.formlib import form
 from zope.interface import Interface
 from zope.schema import Text
 
+from Products.CMFCore.interfaces import IWorkflowTool
 from Products.CMFDefault.browser.utils import memoize
 from Products.CMFDefault.exceptions import WorkflowException
 from Products.CMFDefault.formlib.form import EditFormBase
@@ -58,7 +60,7 @@
     @property
     @memoize
     def workflow(self):
-        return self._getTool('portal_workflow')
+        return getUtility(IWorkflowTool)
 
     def handle_workflow(self, action, data):
         try:

Modified: Products.CMFDefault/trunk/Products/CMFDefault/profiles/default/componentregistry.xml
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/profiles/default/componentregistry.xml	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/profiles/default/componentregistry.xml	2011-09-16 12:18:54 UTC (rev 122821)
@@ -5,6 +5,8 @@
  <utilities>
   <utility interface="Products.CMFCore.interfaces.IActionsTool"
      object="portal_actions"/>
+  <utility interface="Products.CMFCore.interfaces.ICatalogTool"
+     object="portal_catalog"/>
   <utility interface="Products.CMFCore.interfaces.ICookieCrumbler"
      object="cookie_authentication"/>
   <utility interface="Products.CMFCore.interfaces.IDiscussionTool"
@@ -20,12 +22,16 @@
   <utility interface="Products.CMFCore.interfaces.IRegistrationTool"
      object="portal_registration"/>
   <utility interface="Products.CMFCore.interfaces.ISiteRoot" object=""/>
+  <utility interface="Products.CMFCore.interfaces.ISkinsTool"
+     object="portal_skins"/>
   <utility interface="Products.CMFCore.interfaces.ISyndicationTool"
      object="portal_syndication"/>
   <utility interface="Products.CMFCore.interfaces.IUndoTool"
      object="portal_undo"/>
   <utility interface="Products.CMFCore.interfaces.IURLTool"
      object="portal_url"/>
+  <utility interface="Products.CMFCore.interfaces.IWorkflowTool"
+     object="portal_workflow"/>
   <utility interface="Products.GenericSetup.interfaces.ISetupTool"
      object="portal_setup"/>
   <utility interface="Products.MailHost.interfaces.IMailHost"

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_content/content_status_modify.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_content/content_status_modify.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_content/content_status_modify.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -1,11 +1,11 @@
 ##parameters=workflow_action, comment=''
 ##title=Modify the status of a content object
 ##
-from Products.CMFCore.utils import getToolByName
+from Products.CMFCore.utils import getUtilityByInterfaceName
 from Products.CMFDefault.exceptions import WorkflowException
 from Products.CMFDefault.utils import Message as _
 
-wtool = getToolByName(script, 'portal_workflow')
+wtool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IWorkflowTool')
 
 try:
     wtool.doActionFor(context, workflow_action, comment=comment)

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_control/logout.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_control/logout.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_control/logout.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -1,10 +1,9 @@
 ## Script (Python) "logout"
 ##title=Logout handler
 ##parameters=
-from Products.CMFCore.utils import getToolByName
 from Products.CMFCore.utils import getUtilityByInterfaceName
 
-stool = getToolByName(context, 'portal_skins')
+stool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ISkinsTool')
 utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')
 REQUEST = context.REQUEST
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/getMainGlobals.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -16,7 +16,9 @@
 utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool',
                                   # BBB: fallback for CMF 2.2 instances
                                   getToolByName(script, 'portal_url'))
-wtool = getToolByName(script, 'portal_workflow')
+wtool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IWorkflowTool',
+                                  # BBB: fallback for CMF 2.2 instances
+                                  getToolByName(script, 'portal_workflow'))
 uidtool = getToolByName(script, 'portal_uidhandler', None)
 syndtool = getToolByName(script, 'portal_syndication', None)
 portal_object = utool.getPortalObject()

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/logged_in.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/logged_in.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/logged_in.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -1,6 +1,5 @@
 ##parameters=
 ##
-from Products.CMFCore.utils import getToolByName
 from Products.CMFCore.utils import getUtilityByInterfaceName
 from Products.CMFDefault.utils import decode
 from Products.CMFDefault.utils import Message as _
@@ -8,7 +7,7 @@
 atool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IActionsTool')
 mtool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IMembershipTool')
 ptool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IPropertiesTool')
-stool = getToolByName(script, 'portal_skins')
+stool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ISkinsTool')
 
 
 if stool.updateSkinCookie():

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/news_box.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/news_box.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/news_box.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -1,10 +1,10 @@
 ##parameters=
 ##
 from ZTUtils import Batch
-from Products.CMFCore.utils import getToolByName
+from Products.CMFCore.utils import getUtilityByInterfaceName
 from Products.CMFDefault.utils import decode
 
-ctool = getToolByName(script, 'portal_catalog')
+ctool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ICatalogTool')
 
 options = {}
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/recent_news.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/recent_news.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/recent_news.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -2,11 +2,10 @@
 ##
 from Products.PythonScripts.standard import structured_text
 from ZTUtils import Batch
-from Products.CMFCore.utils import getToolByName
 from Products.CMFCore.utils import getUtilityByInterfaceName
 from Products.CMFDefault.utils import decode
 
-ctool = getToolByName(script, 'portal_catalog')
+ctool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ICatalogTool')
 utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')
 portal_url = utool()
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/rejectItems.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/rejectItems.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/rejectItems.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -1,15 +1,8 @@
-## Script (Python) "rejectItems"
-##bind container=container
-##bind context=context
-##bind namespace=
-##bind script=script
-##bind subpath=traverse_subpath
 ##parameters=items, comment=''
-##title=
 ##
-from Products.CMFCore.utils import getToolByName
+from Products.CMFCore.utils import getUtilityByInterfaceName
 
-wtool = getToolByName(script, 'portal_workflow')
+wtool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IWorkflowTool')
 for path in items:
     object = context.restrictedTraverse( path )
     wtool.doActionFor( object, 'reject', comment=comment )


Property changes on: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/rejectItems.py
___________________________________________________________________
Deleted: svn:keywords
   - Author Date Id Revision

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -2,12 +2,11 @@
 ##
 from Products.PythonScripts.standard import thousands_commas
 from ZTUtils import Batch
-from Products.CMFCore.utils import getToolByName
 from Products.CMFCore.utils import getUtilityByInterfaceName
 from Products.CMFDefault.utils import decode
 from Products.CMFDefault.utils import Message as _
 
-ctool = getToolByName(script, 'portal_catalog')
+ctool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ICatalogTool')
 utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')
 portal_url = utool()
 epoch = DateTime('1970/01/01 00:00:01 GMT')

Modified: Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search_form.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search_form.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/skins/zpt_generic/search_form.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -6,7 +6,7 @@
 from Products.CMFDefault.utils import decode
 from Products.CMFDefault.utils import Message as _
 
-ctool = getToolByName(script, 'portal_catalog')
+ctool = getUtilityByInterfaceName('Products.CMFCore.interfaces.ICatalogTool')
 mtool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IMembershipTool')
 ttool = getToolByName(script, 'portal_types')
 utool = getUtilityByInterfaceName('Products.CMFCore.interfaces.IURLTool')

Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_DefaultWorkflow.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_DefaultWorkflow.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_DefaultWorkflow.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -16,8 +16,11 @@
 import unittest
 import Testing
 
+from zope.component import getSiteManager
 from zope.interface.verify import verifyClass
+from zope.testing.cleanup import cleanUp
 
+from Products.CMFCore.interfaces import IWorkflowTool
 from Products.CMFCore.tests.base.dummy import DummyContent
 from Products.CMFCore.tests.base.dummy import DummySite
 from Products.CMFCore.tests.base.dummy import DummyTool
@@ -32,14 +35,17 @@
                 import DefaultWorkflowDefinition
         self.site = DummySite('site')
         self.site._setObject('portal_types', DummyTool())
-        self.site._setObject('portal_workflow', WorkflowTool())
         self.site._setObject('portal_membership', DummyTool())
         self.site._setObject('acl_users', DummyUserFolder())
 
-        wftool = self.site.portal_workflow
-        wftool._setObject('wf', DefaultWorkflowDefinition('wf'))
-        wftool.setDefaultChain('wf')
+        self.wtool = WorkflowTool()
+        self.wtool._setObject('wf', DefaultWorkflowDefinition('wf'))
+        self.wtool.setDefaultChain('wf')
+        getSiteManager().registerUtility(self.wtool, IWorkflowTool)
 
+    def tearDown(self):
+        cleanUp()
+
     def test_interfaces(self):
         from Products.CMFCore.interfaces import IWorkflowDefinition
         from Products.CMFDefault.DefaultWorkflow \
@@ -48,8 +54,7 @@
         verifyClass(IWorkflowDefinition, DefaultWorkflowDefinition)
 
     def _getDummyWorkflow(self):
-        wftool = self.site.portal_workflow
-        return wftool.wf
+        return self.wtool.wf
 
     def test_isActionSupported(self):
 

Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_Discussions.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_Discussions.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_Discussions.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -21,6 +21,7 @@
 from zope.interface.verify import verifyClass
 
 from Products.CMFCore.CatalogTool import CatalogTool
+from Products.CMFCore.interfaces import ICatalogTool
 from Products.CMFCore.interfaces import IDiscussionTool
 from Products.CMFCore.testing import EventZCMLLayer
 from Products.CMFCore.tests.base.dummy import DummyContent
@@ -172,9 +173,10 @@
         assert len( parents ) == 1
         assert parents[ 0 ] == reply1
 
-    def test_itemCataloguing( self ):
-        ctool = self.site._setObject( 'portal_catalog', CatalogTool() )
+    def test_itemCataloguing(self):
+        ctool = CatalogTool()
         ctool.addColumn('in_reply_to')
+        getSiteManager().registerUtility(ctool, ICatalogTool)
         dtool = self.site.portal_discussion
         test = self._makeDummyContent('test', catalog=1)
         test.allow_discussion = 1
@@ -233,7 +235,7 @@
         DiscussionItem.test_wf_notified = 0
 
         try:
-            reply_id = talkback.createReply(title='test', text='blah')
+            talkback.createReply(title='test', text='blah')
             reply = talkback.getReplies()[0]
             self.assertEqual(reply.test_wf_notified, 1)
         finally:
@@ -244,7 +246,8 @@
                 DiscussionItem.notifyWorkflowCreated = old_method
 
     def test_deletePropagation( self ):
-        ctool = self.site._setObject( 'portal_catalog', CatalogTool() )
+        ctool = CatalogTool()
+        getSiteManager().registerUtility(ctool, ICatalogTool)
         dtool = self.site.portal_discussion
         test = self._makeDummyContent('test', catalog=1)
         test.allow_discussion = 1
@@ -259,7 +262,8 @@
 
     def test_deleteReplies(self):
         dtool = self.site.portal_discussion
-        ctool = self.site._setObject( 'portal_catalog', CatalogTool() )
+        ctool = CatalogTool()
+        getSiteManager().registerUtility(ctool, ICatalogTool)
         test = self._makeDummyContent('test')
         test.allow_discussion = 1
 
@@ -317,8 +321,8 @@
         test = self._makeDummyContent('test')
         test.allow_discussion = 1
         dtool = self.site.portal_discussion
+        dtool.getDiscussionFor(test)
         talkback = dtool.getDiscussionFor(test)
-        talkback = dtool.getDiscussionFor(test)
         self.failUnless(hasattr(talkback, 'aq_base'))
         # Acquire a portal tool
         self.failUnless(getToolByName(talkback, 'portal_discussion'))

Modified: Products.CMFDefault/trunk/Products/CMFDefault/tests/test_MembershipTool.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/tests/test_MembershipTool.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/tests/test_MembershipTool.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -17,9 +17,11 @@
 import Testing
 
 from AccessControl.SecurityManagement import newSecurityManager
+from zope.component import getSiteManager
 from zope.interface.verify import verifyClass
 from zope.testing.cleanup import cleanUp
 
+from Products.CMFCore.interfaces import IWorkflowTool
 from Products.CMFCore.PortalFolder import PortalFolder
 from Products.CMFCore.tests.base.dummy import DummyFolder
 from Products.CMFCore.tests.base.dummy import DummySite
@@ -83,7 +85,8 @@
         mtool = self.site.portal_membership
         members = self.site._setObject( 'Members', PortalFolder('Members') )
         acl_users = self.site._setObject( 'acl_users', DummyUserFolder() )
-        wtool = self.site._setObject( 'portal_workflow', DummyTool() )
+        wtool = DummyTool()
+        getSiteManager().registerUtility(wtool, IWorkflowTool)
 
         # permission
         mtool.createMemberArea('user_foo')

Modified: Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to23.py
===================================================================
--- Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to23.py	2011-09-16 12:18:39 UTC (rev 122820)
+++ Products.CMFDefault/trunk/Products/CMFDefault/upgrade/to23.py	2011-09-16 12:18:54 UTC (rev 122821)
@@ -265,10 +265,13 @@
 _TOOL_UTILITIES = (
     ('cookie_authentication', 'Products.CMFCore.interfaces.ICookieCrumbler'),
     ('portal_actions', 'Products.CMFCore.interfaces.IActionsTool'),
+    ('portal_catalog', 'Products.CMFCore.interfaces.ICatalogTool'),
     ('portal_memberdata', 'Products.CMFCore.interfaces.IMemberDataTool'),
     ('portal_membership', 'Products.CMFCore.interfaces.IMembershipTool'),
     ('portal_registration', 'Products.CMFCore.interfaces.IRegistrationTool'),
+    ('portal_skins', 'Products.CMFCore.interfaces.ISkinsTool'),
     ('portal_url', 'Products.CMFCore.interfaces.IURLTool'),
+    ('portal_workflow', 'Products.CMFCore.interfaces.IWorkflowTool'),
 )
 
 def check_root_site_manager(tool):



More information about the checkins mailing list