diff options
| author | Stephane Wirtel <stw@openerp.com> | 2011-09-29 14:35:24 +0200 |
|---|---|---|
| committer | Stephane Wirtel <stw@openerp.com> | 2011-09-29 14:35:24 +0200 |
| commit | 4380b2044a5b635bbdbbecc8c01705d71a35af36 (patch) | |
| tree | c7cccccc1da2e56e8432e260019d03c5da9ab525 /addons/base_setup | |
| parent | bfc823812d0f0dd6bdafda0514dd18517c38827e (diff) | |
[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
Diffstat (limited to 'addons/base_setup')
| -rw-r--r-- | addons/base_setup/base_setup.py | 45 |
1 files 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 = ['<form string="Automatic Base Setup">'] - arch.append('<separator string="Categories" colspan="4" />') + domain = [('parent_id', '=', False), + ('name', '!=', 'Localization')] + module_category_ids = module_category_proxy.search(cr, uid, domain, context=context, order='name asc') + + arch = ['<form string="%s">' % _('Automatic Base Setup')] + arch.append('<separator string="%s" colspan="4" />' % _('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('<field name="category_%d" />' % (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("""<separator string="%s" colspan="4" modifiers='%s'/>""" % (cgi.escape(module_category.name), modifiers)) - # for module in module_category.module_ids: - # arch.append("""<field name="module_%s" modifiers='%s' />""" % (module.name, modifiers)) + modifiers = { + 'invisible' : [('category_%d' % (module_category.id), '=', False)], + 'readonly' : module.state == 'installed', + } + modifiers = simplejson.dumps(modifiers) + arch.append("""<separator string="%s" colspan="4" modifiers='%s'/>""" % (cgi.escape(module_category.name), modifiers)) + for module in module_category.module_ids: + arch.append("""<field name="module_%s" modifiers='%s' />""" % (module.name, modifiers)) arch.append( '<separator colspan="4" />' @@ -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 = { |
