From 4380b2044a5b635bbdbbecc8c01705d71a35af36 Mon Sep 17 00:00:00 2001 From: Stephane Wirtel Date: Thu, 29 Sep 2011 14:35:24 +0200 Subject: [PATCH] [REF] base_setup: Specify the right domain for the ir.module.category, needed by the fields_get and fields_view_get methods of the super base.setup.installer2 bzr revid: stw@openerp.com-20110929123524-lsw8o8diyj4ljpku --- addons/base_setup/base_setup.py | 45 ++++++++++++++++----------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/addons/base_setup/base_setup.py b/addons/base_setup/base_setup.py index 031e004e804..38edf7accbf 100644 --- a/addons/base_setup/base_setup.py +++ b/addons/base_setup/base_setup.py @@ -53,9 +53,11 @@ class base_setup_installer2(osv.osv_memory): if fields is None: fields = {} - fields = {} #super(base_setup_installer2, self).fields_get(cr, uid, fields, context=context) + fields = {} category_proxy = self.pool.get('ir.module.category') - category_ids = category_proxy.search(cr, uid, [], context=context) + domain = [('parent_id', '=', False), + ('name', '!=', 'Localization')] + category_ids = category_proxy.search(cr, uid, domain, context=context) for category in category_proxy.browse(cr, uid, category_ids, context=context): category_name = 'category_%d' % (category.id,) fields[category_name] = { @@ -102,9 +104,12 @@ class base_setup_installer2(osv.osv_memory): result = super(base_setup_installer2, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu) module_category_proxy = self.pool.get('ir.module.category') - module_category_ids = module_category_proxy.search(cr, uid, [], context=context, order='name asc') - arch = ['
'] - arch.append('') + domain = [('parent_id', '=', False), + ('name', '!=', 'Localization')] + module_category_ids = module_category_proxy.search(cr, uid, domain, context=context, order='name asc') + + arch = ['' % _('Automatic Base Setup')] + arch.append('' % _('Categories')) for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): readonly = False for module in module_category.module_ids: @@ -116,19 +121,19 @@ class base_setup_installer2(osv.osv_memory): else: arch.append('' % (module_category.id,)) + # Compute the module to show + for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): + if not module_category.module_ids: + continue - #for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): - # if not module_category.module_ids: - # continue - - # modifiers = { - # 'invisible' : [('category_%d' % (module_category.id), '=', False)], - # 'readonly' : module.state == 'installed', - # } - # modifiers = simplejson.dumps(modifiers) - # arch.append("""""" % (cgi.escape(module_category.name), modifiers)) - # for module in module_category.module_ids: - # arch.append("""""" % (module.name, modifiers)) + modifiers = { + 'invisible' : [('category_%d' % (module_category.id), '=', False)], + 'readonly' : module.state == 'installed', + } + modifiers = simplejson.dumps(modifiers) + arch.append("""""" % (cgi.escape(module_category.name), modifiers)) + for module in module_category.module_ids: + arch.append("""""" % (module.name, modifiers)) arch.append( '' @@ -142,14 +147,8 @@ class base_setup_installer2(osv.osv_memory): result['arch'] = ''.join(arch) - from pprint import pprint as pp - pp(result['arch']) - return result - def write(self, cr, uid, ids, values, context=None): - return True - def create(self, cr, uid, values, context=None): modules_to_install = [ key[len('module_'):] for key, value in values.iteritems() if value == 1 and key.startswith('module_')] values = {