From 6ec89c42e0e5b872c2f4c98aeb40d11a7e5f19bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9rome=20Perrin?= <jerome@nexedi.com> Date: Tue, 25 May 2010 11:32:46 +0000 Subject: [PATCH] extend createPreferenceForUser API to enable the preference directly. git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@35612 20353a03-c40f-0410-a6d1-a30d3c3de9de --- product/ERP5Form/PreferenceTool.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/product/ERP5Form/PreferenceTool.py b/product/ERP5Form/PreferenceTool.py index d3a9882060..eb9b6365a1 100644 --- a/product/ERP5Form/PreferenceTool.py +++ b/product/ERP5Form/PreferenceTool.py @@ -295,8 +295,9 @@ class PreferenceTool(BaseTool): security.declareProtected(Permissions.ManagePortal, 'createPreferenceForUser') - def createPreferenceForUser(self, username): - """Creates a preference for a given user. + def createPreferenceForUser(self, username, enable=True): + """Creates a preference for a given user, and optionnally enable the + preference. """ security_manager = getSecurityManager() try: @@ -305,7 +306,10 @@ class PreferenceTool(BaseTool): if user is None: raise ValueError("User %r not found" % (username, )) newSecurityManager(None, user.__of__(user_folder)) - return self.newContent(portal_type='Preference') + preference = self.newContent(portal_type='Preference') + if enable: + preference.enable() + return preference finally: setSecurityManager(security_manager) -- 2.30.9