[Erp5-report] r29697 - /erp5/trunk/products/ERP5Type/Utils.py

nobody at svn.erp5.org nobody at svn.erp5.org
Fri Oct 16 01:21:02 CEST 2009


Author: jm
Date: Fri Oct 16 01:21:01 2009
New Revision: 29697

URL: http://svn.erp5.org?rev=29697&view=rev
Log:
Speed up ERP5Type.Utils.createExpressionContext and remove 'folder' from context

folder/folder_url have no clear definition and are not used in ERP5.

Modified:
    erp5/trunk/products/ERP5Type/Utils.py

Modified: erp5/trunk/products/ERP5Type/Utils.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Type/Utils.py?rev=29697&r1=29696&r2=29697&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Type/Utils.py [utf8] (original)
+++ erp5/trunk/products/ERP5Type/Utils.py [utf8] Fri Oct 16 01:21:01 2009
@@ -1134,52 +1134,30 @@
   """
     Return a context used for evaluating a TALES expression.
   """
-  if portal is None and object is not None:
-    portal = object.getPortalObject()
-
-  if object is None or getattr(object, 'aq_base', None) is None:
-    folder = portal
+  if object is None:
+    object_url = ''
   else:
-    folder = object
-    # Search up the containment hierarchy until we find an
-    # object that claims it's a folder.
-    while folder is not None:
-      if getattr(aq_base(folder), 'isPrincipiaFolderish', 0):
-        # found it.
-        break
-      else:
-        folder = aq_parent(aq_inner(folder))
+    object_url = object.absolute_url()
+    if portal is None:
+      portal = object.getPortalObject()
 
   if portal is not None:
-    pm = getToolByName(portal, 'portal_membership')
+    portal_url = portal.absolute_url()
+    pm = portal.portal_membership
     if pm.isAnonymousUser():
       member = None
     else:
       member = pm.getAuthenticatedMember()
   else:
+    portal_url = ''
     member = None
-
-  if object is None:
-    object_url = ''
-  else:
-    object_url = object.absolute_url()
-
-  if folder is None:
-    folder_url = ''
-  else:
-    folder_url = folder.absolute_url()
-
-  if portal is None:
-    portal_url = ''
-  else:
-    portal_url = portal.absolute_url()
 
   data = {
       'object_url':   object_url,
-      'folder_url':   folder_url,
       'portal_url':   portal_url,
       'object':       object,
-      'folder':       folder,
+      'folder':       None, # XXX to be removed when
+                            #     ERP5Type.Core.ActionInformation is cleaned up
       'portal':       portal,
       'nothing':      None,
       'request':      getattr( object, 'REQUEST', None ),




More information about the Erp5-report mailing list