[Erp5-report] r9340 - in /erp5/trunk/products/ERP5Type: Base.py Tool/ClassTool.py

nobody at svn.erp5.org nobody at svn.erp5.org
Wed Aug 23 10:01:34 CEST 2006


Author: vincent
Date: Wed Aug 23 10:01:27 2006
New Revision: 9340

URL: http://svn.erp5.org?rev=9340&view=rev
Log:
Move newTempDocumentationHelper and TempDocumentationHelper to ERP5Type/Base.py. This class have not to be protected by class tool protection, since it is just a container. The right function to secure is asDocumentationHelper because it's the function which might gather sensible information from documents, and which requires ManagePortal role.

Modified:
    erp5/trunk/products/ERP5Type/Base.py
    erp5/trunk/products/ERP5Type/Tool/ClassTool.py

Modified: erp5/trunk/products/ERP5Type/Base.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Base.py?rev=9340&r1=9339&r2=9340&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Base.py (original)
+++ erp5/trunk/products/ERP5Type/Base.py Wed Aug 23 10:01:27 2006
@@ -116,7 +116,6 @@
       res = wf.wrapWorkflowMethod(instance, self._id, self.__dict__['_m'],
                                   (instance,) + args, kw)
     return res
-
 
 def _aq_reset():
   Base.aq_method_generated = {}
@@ -2338,8 +2337,6 @@
          PortalType, and are browsed a second time to be able to group them
          by property or category.
     """
-    from Products.ERP5Type.Tool.ClassTool import newTempDocumentationHelper
-
     if item_id is None:
       documented_item = self
       item_id = documented_item.getTitle()
@@ -2597,3 +2594,39 @@
     return getattr(self,'title',None)
 
   security.declarePublic('setProperty')
+
+def newTempDocumentationHelper(folder, id, REQUEST=None, **kw):
+  o = TempDocumentationHelper(id)
+  o = o.__of__(folder)
+  if kw is not None:
+    o._edit(force_update=1, **kw)
+  return o
+
+class TempDocumentationHelper(TempBase):
+  """
+    Contains information about a documentable item.
+    Documentable item can be any python type, instanciated or not.
+  """
+
+  meta_type = "ERP5 Documentation Helper"
+  portal_type = "Documentation Helper"
+
+  property_sheets = ( PropertySheet.Base
+                    , PropertySheet.DublinCore
+                    , PropertySheet.DocumentationHelper
+                    , )
+
+  def _funcname_cmp_prepare(self, funcname):
+    for pos in range(len(funcname)):
+      if funcname[pos] != '_':
+        break
+    return '%s%s' % (funcname[pos:], funcname[:pos])
+
+  def __cmp__(self, documentationhelper):
+    my_title = self._funcname_cmp_prepare(self.getTitle())
+    his_title = self._funcname_cmp_prepare(documentationhelper.getTitle())
+    if my_title < his_title:
+      return -1
+    if my_title > his_title:
+      return 1
+    return 0

Modified: erp5/trunk/products/ERP5Type/Tool/ClassTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Tool/ClassTool.py?rev=9340&r1=9339&r2=9340&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Tool/ClassTool.py (original)
+++ erp5/trunk/products/ERP5Type/Tool/ClassTool.py Wed Aug 23 10:01:27 2006
@@ -808,45 +808,6 @@
         dochelper.setStaticPropertyList(property_list)
         return dochelper
 
-  from Products.ERP5Type.Base import TempBase
-  from Products.ERP5Type import PropertySheet
-
-  def newTempDocumentationHelper(folder, id, REQUEST=None, **kw):
-    o = TempDocumentationHelper(id)
-    o = o.__of__(folder)
-    if kw is not None:
-      o._edit(force_update=1, **kw)
-    return o
-
-  class TempDocumentationHelper(TempBase):
-    """
-      Contains information about a documentable item.
-      Documentable item can be any python type, instanciated or not.
-    """
-
-    meta_type = "ERP5 Documentation Helper"
-    portal_type = "Documentation Helper"
-
-    property_sheets = ( PropertySheet.Base
-                      , PropertySheet.DublinCore
-                      , PropertySheet.DocumentationHelper
-                      , )
-
-    def _funcname_cmp_prepare(self, funcname):
-      for pos in range(len(funcname)):
-        if funcname[pos] != '_':
-          break
-      return '%s%s' % (funcname[pos:], funcname[:pos])
-
-    def __cmp__(self, documentationhelper):
-      my_title = self._funcname_cmp_prepare(self.getTitle())
-      his_title = self._funcname_cmp_prepare(documentationhelper.getTitle())
-      if my_title < his_title:
-        return -1
-      if my_title > his_title:
-        return 1
-      return 0
-
 else:
 
   class ClassTool(BaseTool):




More information about the Erp5-report mailing list