summaryrefslogtreecommitdiff
path: root/bin/addons/base/ir
diff options
context:
space:
mode:
authornch@tinyerp.com <>2010-10-15 14:45:28 +0530
committernch@tinyerp.com <>2010-10-15 14:45:28 +0530
commit658d2ba6256d12d5e170246819401beb72c19d2d (patch)
tree98172402da8870f122b309dec7c1cefaad482734 /bin/addons/base/ir
parent9e5ba79ce1dd0c446c9f5cbae9d5297563b7df41 (diff)
[FIX]:create_shortcut method
bzr revid: nch@tinyerp.com-20101015091528-v0ic3xnewf0fxvkc
Diffstat (limited to 'bin/addons/base/ir')
-rw-r--r--bin/addons/base/ir/ir_ui_menu.py13
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))