[Erp5-report] r16280 - /erp5/trunk/products/ERP5Form/PreferenceTool.py
nobody at svn.erp5.org
nobody at svn.erp5.org
Wed Sep 12 10:39:03 CEST 2007
Author: jerome
Date: Wed Sep 12 10:39:03 2007
New Revision: 16280
URL: http://svn.erp5.org?rev=16280&view=rev
Log:
user_name= was just passed to make the cache vary, instead generate a cache key
containing user name, so that user_name parameter is not mixed with standard
parameters.
Don't pass positional arguments to searchFolder, because it does not support
any.
Modified:
erp5/trunk/products/ERP5Form/PreferenceTool.py
Modified: erp5/trunk/products/ERP5Form/PreferenceTool.py
URL: http://svn.erp5.org/erp5/trunk/products/ERP5Form/PreferenceTool.py?rev=16280&r1=16279&r2=16280&view=diff
==============================================================================
--- erp5/trunk/products/ERP5Form/PreferenceTool.py (original)
+++ erp5/trunk/products/ERP5Form/PreferenceTool.py Wed Sep 12 10:39:03 2007
@@ -124,7 +124,7 @@
self._null = (None, '', (), [])
def __call__(self, instance, *args, **kw):
- def _getPreference(user_name=None, *args, **kw):
+ def _getPreference(*args, **kw):
value = None
for pref in instance._getSortedPreferenceList(*args, **kw):
value = getattr(pref, self._preference_name, _marker)
@@ -136,10 +136,10 @@
break
return value
_getPreference = CachingMethod(_getPreference,
- id=self._preference_cache_id,
+ id='%s.%s' % (self._preference_cache_id,
+ getSecurityManager().getUser().getId()),
cache_factory='erp5_ui_short')
- user_name = getSecurityManager().getUser().getId()
- value = _getPreference(user_name=user_name, *args, **kw)
+ value = _getPreference(*args, **kw)
# XXX Preference Tool has a strange assumption that, even if
# all values are null values, one of them must be returned.
# Therefore, return a default value, only if explicitly specified,
@@ -210,7 +210,7 @@
# or better solution
user = getToolByName(self, 'portal_membership').getAuthenticatedMember()
user_is_manager = 'Manager' in user.getRolesInContext(self)
- for pref in self.searchFolder(portal_type='Preference', *args, **kw) :
+ for pref in self.searchFolder(portal_type='Preference', **kw) :
pref = pref.getObject()
if pref is not None and pref.getProperty('preference_state',
'broken') in ('enabled', 'global'):
More information about the Erp5-report
mailing list