diff options
| author | nch@tinyerp.com <> | 2010-10-15 14:45:28 +0530 |
|---|---|---|
| committer | nch@tinyerp.com <> | 2010-10-15 14:45:28 +0530 |
| commit | 658d2ba6256d12d5e170246819401beb72c19d2d (patch) | |
| tree | 98172402da8870f122b309dec7c1cefaad482734 /bin/addons/base/ir/ir_ui_menu.py | |
| parent | 9e5ba79ce1dd0c446c9f5cbae9d5297563b7df41 (diff) | |
[FIX]:create_shortcut method
bzr revid: nch@tinyerp.com-20101015091528-v0ic3xnewf0fxvkc
Diffstat (limited to 'bin/addons/base/ir/ir_ui_menu.py')
| -rw-r--r-- | bin/addons/base/ir/ir_ui_menu.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/bin/addons/base/ir/ir_ui_menu.py b/bin/addons/base/ir/ir_ui_menu.py index 6b4d98962b4..ec923074573 100644 --- a/bin/addons/base/ir/ir_ui_menu.py +++ b/bin/addons/base/ir/ir_ui_menu.py @@ -69,9 +69,14 @@ class ir_ui_menu(osv.osv): def create_shortcut(self, cr, uid, values, context={}): dataobj = self.pool.get('ir.model.data') - menu_id = dataobj._get_id(cr, uid, 'base', 'menu_administration_shortcut', context) - shortcut_menu_id = int(dataobj.read(cr, uid, menu_id, ['res_id'], context)['res_id']) - action_id = self.pool.get('ir.actions.act_window').create(cr, uid, values, context) + new_context = context.copy() + for key in context: + if key.startswith('default_'): + del new_context[key] + + menu_id = dataobj._get_id(cr, uid, 'base', 'menu_administration_shortcut', new_context) + shortcut_menu_id = int(dataobj.read(cr, uid, menu_id, ['res_id'], new_context)['res_id']) + action_id = self.pool.get('ir.actions.act_window').create(cr, uid, values, new_context) menu_data = {'name':values['name'], 'sequence':10, 'action':'ir.actions.act_window,'+str(action_id), @@ -79,7 +84,7 @@ class ir_ui_menu(osv.osv): 'icon':'STOCK_JUSTIFY_FILL'} menu_id = self.pool.get('ir.ui.menu').create(cr, uid, menu_data) sc_data= {'name':values['name'], 'sequence': 1,'res_id': menu_id } - sc_menu_id = self.pool.get('ir.ui.view_sc').create(cr, uid, sc_data, context) + sc_menu_id = self.pool.get('ir.ui.view_sc').create(cr, uid, sc_data, new_context) user_groups = set(self.pool.get('res.users').read(cr, 1, uid, ['groups_id'])['groups_id']) key = (cr.dbname, shortcut_menu_id, tuple(user_groups)) |
