diff --git a/openerp/addons/base/base_menu.xml b/openerp/addons/base/base_menu.xml
index 0f05c024d5c..33b49c97ec7 100644
--- a/openerp/addons/base/base_menu.xml
+++ b/openerp/addons/base/base_menu.xml
@@ -7,7 +7,7 @@
-
+
diff --git a/openerp/addons/base/ir/ir.xml b/openerp/addons/base/ir/ir.xml
index 6b13b4e116b..b48279e1027 100644
--- a/openerp/addons/base/ir/ir.xml
+++ b/openerp/addons/base/ir/ir.xml
@@ -219,7 +219,7 @@
{'active_test': False}
-
+
diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py
index ec1e64ac3c4..575a965fa11 100644
--- a/openerp/addons/base/module/module.py
+++ b/openerp/addons/base/module/module.py
@@ -351,15 +351,13 @@ class module(osv.osv):
if config.get('type') not in ('ir.actions.reload', 'ir.actions.act_window_close'):
return config
+ # reload the client
menu_ids = self.root_menus(cr,uid,ids,context)
- if menu_ids:
- action = {
- 'type': 'ir.ui.menu',
- 'menu_id': menu_ids[0],
- 'reload' : True,
- }
- return action
- return False
+ return {
+ 'type': 'ir.actions.client',
+ 'tag': 'reload',
+ 'params': {'menu_id': menu_ids and menu_ids[0] or False},
+ }
def button_install_cancel(self, cr, uid, ids, context=None):
self.write(cr, uid, ids, {'state': 'uninstalled', 'demo':False})
diff --git a/openerp/addons/base/res/res_config.py b/openerp/addons/base/res/res_config.py
index 0b348da3d74..f28b023eddd 100644
--- a/openerp/addons/base/res/res_config.py
+++ b/openerp/addons/base/res/res_config.py
@@ -539,19 +539,10 @@ class res_config_settings(osv.osv_memory):
if to_install_ids:
ir_module.button_immediate_install(cr, uid, to_install_ids, context)
- # open the menu for this wizard (or Settings), and force client-side refresh
- act_ids = self.pool.get('ir.actions.act_window').search(cr, uid, [('res_model', '=', self._name)])
- act_refs = ['ir.actions.act_window,%s' % id for id in act_ids]
- val_ids = ir_values.search(cr, uid, [('model', '=', 'ir.ui.menu'), ('key', '=', 'action'),
- ('key2', '=', 'tree_but_open'), ('value', 'in', act_refs)])
- if val_ids:
- menu_id = ir_values.browse(cr, uid, val_ids[0]).res_id
- else:
- menu_id = ir_model_data.get_object(cr, uid, 'base', 'menu_administration', context).id
+ # force client-side reload (update user menu and current view)
return {
- 'type': 'ir.ui.menu',
- 'menu_id': menu_id,
- 'reload': True,
+ 'type': 'ir.actions.client',
+ 'tag': 'reload',
}
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/openerp/addons/base/res/res_lang.py b/openerp/addons/base/res/res_lang.py
index 13acf109b04..07b220a6ee3 100644
--- a/openerp/addons/base/res/res_lang.py
+++ b/openerp/addons/base/res/res_lang.py
@@ -58,9 +58,6 @@ class lang(osv.osv):
default_value = ir_values_obj.get(cr, uid, 'default', False, ['res.partner'])
if not default_value:
ir_values_obj.set(cr, uid, 'default', False, 'lang', ['res.partner'], lang)
- default_value = ir_values_obj.get(cr, uid, 'default', False, ['res.users'])
- if not default_value:
- ir_values_obj.set(cr, uid, 'default', False, 'context_lang', ['res.users'], lang)
return True
def load_lang(self, cr, uid, lang, lang_name=None):
diff --git a/openerp/addons/base/res/res_partner_view.xml b/openerp/addons/base/res/res_partner_view.xml
index 15383ae6371..842a5dcb15a 100644
--- a/openerp/addons/base/res/res_partner_view.xml
+++ b/openerp/addons/base/res/res_partner_view.xml
@@ -541,7 +541,7 @@
- Contacts
+ Customers
ir.actions.act_window
res.partner
form
diff --git a/openerp/addons/base/res/res_users.py b/openerp/addons/base/res/res_users.py
index 47167439674..3101d446707 100644
--- a/openerp/addons/base/res/res_users.py
+++ b/openerp/addons/base/res/res_users.py
@@ -324,10 +324,11 @@ class users(osv.osv):
# default avatar file name: avatar0 -> avatar6.png, choose randomly
avatar_path = openerp.modules.get_module_resource('base', 'static/src/img', 'avatar%d.png' % random.randint(0, 6))
return self._avatar_resize(cr, uid, open(avatar_path, 'rb').read().encode('base64'), context=context)
-
+
_defaults = {
'password' : '',
- 'context_lang': 'en_US',
+ 'context_lang': lambda self, cr, uid, context: context.get('lang', 'en_US'),
+ 'context_tz': lambda self, cr, uid, context: context.get('tz', False),
'avatar': _get_avatar,
'active' : True,
'menu_id': _get_menu,