From 8f9fcae4dce831ad4339f8a8fd140eb950c40704 Mon Sep 17 00:00:00 2001 From: "Laurent Mignon (aka lmi)" Date: Mon, 4 Aug 2014 11:48:09 +0200 Subject: [PATCH] =?UTF-8?q?Addons=20configuration=20parameter=20is=20now?= =?UTF-8?q?=20a=20field=20part=20of=20the=20Authentication=20group=20from?= =?UTF-8?q?=20base=5Fsetup=1B[C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- auth_from_http_remote_user/__openerp__.py | 2 +- .../controllers/main.py | 3 +- auth_from_http_remote_user/res_config.py | 45 ++++++++-------- .../res_config_view.xml | 51 ++++++------------- 4 files changed, 38 insertions(+), 63 deletions(-) diff --git a/auth_from_http_remote_user/__openerp__.py b/auth_from_http_remote_user/__openerp__.py index 8f79c1047..10750cbea 100644 --- a/auth_from_http_remote_user/__openerp__.py +++ b/auth_from_http_remote_user/__openerp__.py @@ -149,7 +149,7 @@ logged in the system. 'author': 'Acsone SA/NV', 'maintainer': 'ACSONE SA/NV', 'website': 'http://www.acsone.eu', - 'depends': ['web'], + 'depends': ['base', 'web', 'base_setup'], "license": "AGPL-3", 'data': [ 'res_config_view.xml', diff --git a/auth_from_http_remote_user/controllers/main.py b/auth_from_http_remote_user/controllers/main.py index 5724c5896..2f295fec3 100644 --- a/auth_from_http_remote_user/controllers/main.py +++ b/auth_from_http_remote_user/controllers/main.py @@ -93,8 +93,7 @@ class Home(main.Home): installed = modules.search_count(cr, SUPERUSER_ID, domain) == 1 if not installed: return - config = registry.get('auth_from_http_remote_user.' - 'config.settings') + config = registry.get('base.config.settings') # get parameters for SSO default_login_page_disabled = \ config.is_default_login_page_disabled(cr, diff --git a/auth_from_http_remote_user/res_config.py b/auth_from_http_remote_user/res_config.py index dcbc2f97a..37fca0bd5 100644 --- a/auth_from_http_remote_user/res_config.py +++ b/auth_from_http_remote_user/res_config.py @@ -21,15 +21,15 @@ from openerp.osv import orm, fields from openerp.tools.safe_eval import safe_eval -import types class auth_from_http_remote_user_configuration(orm.TransientModel): - _name = 'auth_from_http_remote_user.config.settings' - _inherit = 'res.config.settings' + _inherit = 'base.config.settings' _columns = { - 'default_login_page_disabled': fields.boolean("Disable login page", + 'default_login_page_disabled': fields.boolean("Disable login page when " + "login with HTTP Remote " + "User", help=""" Disable the default login page. If the HTTP_REMOTE_HEADER field is not found or no user matches the given one, @@ -39,29 +39,26 @@ Otherwise the normal login page will be displayed. } def is_default_login_page_disabled(self, cr, uid, fields, context=None): - ir_config_obj = self.pool['ir.config_parameter'] - default_login_page_disabled = \ - ir_config_obj.get_param(cr, - uid, - 'auth_from_http_remote_user.' - 'default_login_page_disabled') - if isinstance(default_login_page_disabled, types.BooleanType): - return default_login_page_disabled - return safe_eval(default_login_page_disabled) + vals = self.get_default_default_login_page_disabled(cr, + uid, + fields, + context=context) + return vals.get('default_login_page_disabled', False) def get_default_default_login_page_disabled(self, cr, uid, fields, context=None): - default_login_page_disabled = \ - self.is_default_login_page_disabled(cr, uid, fields, context) - return {'default_login_page_disabled': default_login_page_disabled} + icp = self.pool.get('ir.config_parameter') + # we use safe_eval on the result, since the value of + # the parameter is a nonempty string + is_disabled = icp.get_param(cr, uid, 'default_login_page_disabled', + 'False') + return {'default_login_page_disabled': safe_eval(is_disabled)} def set_default_default_login_page_disabled(self, cr, uid, ids, context=None): - config = self.browse(cr, uid, ids[0], context) - ir_config_parameter_obj = self.pool['ir.config_parameter'] - param_value = repr(config.default_login_page_disabled) - ir_config_parameter_obj.set_param(cr, - uid, - 'auth_from_http_remote_user.' - 'default_login_page_disabled', - param_value) + config = self.browse(cr, uid, ids[0], context=context) + icp = self.pool.get('ir.config_parameter') + # we store the repr of the value, since the value of the parameter + # is a required string + icp.set_param(cr, uid, 'default_login_page_disabled', + repr(config.default_login_page_disabled)) diff --git a/auth_from_http_remote_user/res_config_view.xml b/auth_from_http_remote_user/res_config_view.xml index 3869cb4ac..e2f8df348 100644 --- a/auth_from_http_remote_user/res_config_view.xml +++ b/auth_from_http_remote_user/res_config_view.xml @@ -1,39 +1,18 @@ - - - Auth HTTP_REMOTE_USER settings - auth_from_http_remote_user.config.settings - - -
-
-
-
-
- - - - - -
-
- - - Configure Auth HTTP_REMOTE_USER - ir.actions.act_window - auth_from_http_remote_user.config.settings - form - inline - - - - -
+ + + base.config.settings.auth_from_http_remote_user + base.config.settings + + + +
+ +
+
+
+
+