[Erp5-report] r32602 jerome - in /erp5/trunk/products/ERP5/bootstrap/erp5_core: SkinTemplat...
nobody at svn.erp5.org
nobody at svn.erp5.org
Tue Feb 16 12:25:21 CET 2010
Author: jerome
Date: Tue Feb 16 12:25:18 2010
New Revision: 32602
URL: http://svn.erp5.org?rev=32602&view=rev
Log:
use a request cache
Modified:
erp5/trunk/products/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_checkPermission.xml
erp5/trunk/products/ERP5/bootstrap/erp5_core/bt/revision
Modified: erp5/trunk/products/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_checkPermission.xml
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_checkPermission.xml?rev=32602&r1=32601&r2=32602&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_checkPermission.xml [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_core/SkinTemplateItem/portal_skins/erp5_core/Base_checkPermission.xml [utf8] Tue Feb 16 12:25:18 2010
@@ -55,12 +55,17 @@
<key> <string>_body</string> </key>
<value> <string># Check for a permission on an object specified by a given path\n
# for current user. Return true only if the user is allowed.\n
-portal = context.getPortalObject()\n
-ob = portal.restrictedTraverse(path, None)\n
-if ob is not None:\n
- if portal.portal_membership.checkPermission(permission, ob):\n
- return 1\n
-return 0\n
+cache = container.REQUEST.other\n
+try:\n
+ return cache[(script.getId(), path, permission)]\n
+except KeyError:\n
+ allowed = False\n
+ portal = context.getPortalObject()\n
+ ob = portal.restrictedTraverse(path, None)\n
+ if ob is not None:\n
+ allowed = portal.portal_membership.checkPermission(permission, ob)\n
+ cache[(script.getId(), path, permission)] = allowed\n
+ return allowed\n
</string> </value>
</item>
<item>
@@ -100,10 +105,18 @@
<string>path</string>
<string>permission</string>
<string>_getattr_</string>
+ <string>container</string>
+ <string>cache</string>
+ <string>_getitem_</string>
+ <string>script</string>
+ <string>KeyError</string>
+ <string>False</string>
+ <string>allowed</string>
<string>context</string>
<string>portal</string>
<string>None</string>
<string>ob</string>
+ <string>_write_</string>
</tuple>
</value>
</item>
Modified: erp5/trunk/products/ERP5/bootstrap/erp5_core/bt/revision
URL: http://svn.erp5.org/erp5/trunk/products/ERP5/bootstrap/erp5_core/bt/revision?rev=32602&r1=32601&r2=32602&view=diff
==============================================================================
--- erp5/trunk/products/ERP5/bootstrap/erp5_core/bt/revision [utf8] (original)
+++ erp5/trunk/products/ERP5/bootstrap/erp5_core/bt/revision [utf8] Tue Feb 16 12:25:18 2010
@@ -1,1 +1,1 @@
-1474
+1475
More information about the Erp5-report
mailing list