From cbc70e12f06cb80489163b5f0442b9a3453dadb0 Mon Sep 17 00:00:00 2001 From: Raphael Collet Date: Mon, 2 Apr 2012 16:50:11 +0200 Subject: [PATCH] [IMP] res.user form: hide groups in category 'Hidden' bzr revid: rco@openerp.com-20120402145011-nw5d3nb8ap8r4hn9 --- openerp/addons/base/module/module.py | 1 + openerp/addons/base/res/res_users.py | 8 +++++--- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py index beb35ee38b2..0b061083060 100644 --- a/openerp/addons/base/module/module.py +++ b/openerp/addons/base/module/module.py @@ -80,6 +80,7 @@ class module_category(osv.osv): 'description' : fields.text("Description", translate=True), 'sequence' : fields.integer('Sequence'), 'visible' : fields.boolean('Visible'), + 'xml_id': fields.function(osv.osv.get_external_id, type='char', size=128, string="External ID"), } _order = 'name' diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py index f148813ae05..92aa8b1a4a2 100644 --- a/openerp/addons/base/res/res_users.py +++ b/openerp/addons/base/res/res_users.py @@ -753,18 +753,20 @@ class groups_view(osv.osv): xml1, xml2 = [], [] xml1.append('' % _('Applications')) for app, kind, gs in self.get_groups_by_application(cr, uid, context): + # hide groups in category 'Hidden' (except to group_no_one) + attrs = 'groups="base.group_no_one"' if app and app.xml_id == 'base.module_category_hidden' else '' if kind == 'selection': # application name with a selection field field_name = name_selection_groups(map(int, gs)) - xml1.append('' % field_name) + xml1.append('' % (field_name, attrs)) xml1.append('') else: # application separator with boolean fields app_name = app and app.name or _('Other') - xml2.append('' % app_name) + xml2.append('' % (app_name, attrs)) for g in gs: field_name = name_boolean_group(g.id) - xml2.append('' % field_name) + xml2.append('' % (field_name, attrs)) view.write({'arch': xml % ('\n'.join(xml1), '\n'.join(xml2))}) return True