summaryrefslogtreecommitdiff
path: root/addons/base_setup
diff options
context:
space:
mode:
authorXavier Morel <xmo@openerp.com>2011-07-26 13:12:18 +0200
committerXavier Morel <xmo@openerp.com>2011-07-26 13:12:18 +0200
commit5a41a68bc2c1efd5a81fc4a07ec0ca907441d48b (patch)
treec3d29aa01b0de22da5460245f7004c83ea53cbc1 /addons/base_setup
parent3a6638ab2b894cf1cdc8e0d74adbcd55687e4198 (diff)
parentfbbebc5273ab1020ff85a3ee6f16ad63944b1406 (diff)
[MERGE] from trunk
bzr revid: xmo@openerp.com-20110726111218-umzudy6z5wrn63j9
Diffstat (limited to 'addons/base_setup')
-rw-r--r--addons/base_setup/__openerp__.py1
-rw-r--r--addons/base_setup/installer.py7
2 files changed, 5 insertions, 3 deletions
diff --git a/addons/base_setup/__openerp__.py b/addons/base_setup/__openerp__.py
index 39a417460b0..0c3385b4dab 100644
--- a/addons/base_setup/__openerp__.py
+++ b/addons/base_setup/__openerp__.py
@@ -24,6 +24,7 @@
'name': 'Base Setup',
'version': '1.0',
'category': 'Tools',
+ 'complexity': "easy",
'description': """
This module helps to configure the system at the installation of a new database.
================================================================================
diff --git a/addons/base_setup/installer.py b/addons/base_setup/installer.py
index 172d9687582..381164e69d0 100644
--- a/addons/base_setup/installer.py
+++ b/addons/base_setup/installer.py
@@ -110,8 +110,6 @@ class base_setup_installer(osv.osv_memory):
def execute(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
module_pool = self.pool.get('ir.module.module')
modules_selected = []
datas = self.read(cr, uid, ids, context=context)[0]
@@ -122,16 +120,19 @@ class base_setup_installer(osv.osv_memory):
modules_selected.append(mod)
module_ids = module_pool.search(cr, uid, [('name', 'in', modules_selected)], context=context)
+ need_install = False
for module in module_pool.browse(cr, uid, module_ids, context=context):
if module.state == 'uninstalled':
module_pool.state_update(cr, uid, [module.id], 'to install', ['uninstalled'], context)
+ need_install = True
cr.commit()
- new_db, self.pool = pooler.restart_pool(cr.dbname, update_module=True)
elif module.state == 'installed':
cr.execute("update ir_actions_todo set state='open' \
from ir_model_data as data where data.res_id = ir_actions_todo.id \
and ir_actions_todo.type='special'\
and data.model = 'ir.actions.todo' and data.module=%s", (module.name, ))
+ if need_install:
+ self.pool = pooler.restart_pool(cr.dbname, update_module=True)[1]
return
base_setup_installer()