diff --git a/openerp/addons/base/res/res_user.py b/openerp/addons/base/res/res_user.py index 306ab6fa627..989226c19b5 100644 --- a/openerp/addons/base/res/res_user.py +++ b/openerp/addons/base/res/res_user.py @@ -20,17 +20,21 @@ # ############################################################################## +import logging +from functools import partial +from xml.sax.saxutils import quoteattr + +import simplejson +import pytz +from lxml import etree + +import netsvc +import pooler +import tools from osv import fields,osv from osv.orm import browse_record -import tools -from functools import partial -import pytz -import pooler -from tools.translate import _ from service import security -import netsvc -import logging -from lxml import etree +from tools.translate import _ class groups(osv.osv): _name = "res.groups" @@ -760,13 +764,15 @@ class users_view(osv.osv): if tips: fields[app_name].update(help='\n'.join(tips)) fields[sel_name] = {'type': 'selection', 'string': 'Group', 'selection': selection} + attrs = {'invisible': [('%s' % app_name, '=', False)]} elems.append(""" + attrs=%(attrs)s modifiers=%(json_attrs)s/> - """ % {'app': app_name, 'sel': sel_name}) + """ % {'app': app_name, 'sel': sel_name, + 'attrs': quoteattr(str(attrs)), + 'json_attrs': quoteattr(simplejson.dumps(attrs))}) # create other sections for sec, groups in others: elems.append('' % sec)