diff --git a/openerp/addons/base/ir/ir_actions.py b/openerp/addons/base/ir/ir_actions.py index 4e177959792..57f24c8864a 100644 --- a/openerp/addons/base/ir/ir_actions.py +++ b/openerp/addons/base/ir/ir_actions.py @@ -1057,6 +1057,18 @@ Launch Manually Once: after having been launched manually, it sets automatically } _order="sequence,id" + def name_get(self, cr, uid, ids, context=None): + return [(rec.id, rec.action_id.name) for rec in self.browse(cr, uid, ids, context=context)] + + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): + if args is None: + args = [] + if name: + ids = self.search(cr, user, [('action_id', operator, name)] + args, limit=limit) + return self.name_get(cr, user, ids, context=context) + return super(ir_actions_todo, self).name_search(cr, user, name, args=args, operator=operator, context=context, limit=limit) + + def action_launch(self, cr, uid, ids, context=None): """ Launch Action of Wizard""" wizard_id = ids and ids[0] or False diff --git a/openerp/addons/base/ir/ir_config_parameter.py b/openerp/addons/base/ir/ir_config_parameter.py index 50af5732001..ca5b1112c7a 100644 --- a/openerp/addons/base/ir/ir_config_parameter.py +++ b/openerp/addons/base/ir/ir_config_parameter.py @@ -42,6 +42,7 @@ class ir_config_parameter(osv.osv): """Per-database storage of configuration key-value pairs.""" _name = 'ir.config_parameter' + _rec_name = 'key' _columns = { 'key': fields.char('Key', size=256, required=True, select=1), diff --git a/openerp/addons/base/ir/ir_ui_view.py b/openerp/addons/base/ir/ir_ui_view.py index 026f9161c36..5d2b865e22b 100644 --- a/openerp/addons/base/ir/ir_ui_view.py +++ b/openerp/addons/base/ir/ir_ui_view.py @@ -68,6 +68,18 @@ class view_custom(osv.osv): 'arch': fields.text('View Architecture', required=True), } + def name_get(self, cr, uid, ids, context=None): + return [(rec.id, rec.user_id.name) for rec in self.browse(cr, uid, ids, context=context)] + + def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100): + if args is None: + args = [] + if name: + ids = self.search(cr, user, [('user_id', operator, name)] + args, limit=limit) + return self.name_get(cr, user, ids, context=context) + return super(view_custom, self).name_search(cr, user, name, args=args, operator=operator, context=context, limit=limit) + + def _auto_init(self, cr, context=None): super(view_custom, self)._auto_init(cr, context) cr.execute('SELECT indexname FROM pg_indexes WHERE indexname = \'ir_ui_view_custom_user_id_ref_id\'') diff --git a/openerp/addons/base/ir/ir_ui_view_view.xml b/openerp/addons/base/ir/ir_ui_view_view.xml index 44cbcba1f77..d3ac3058054 100644 --- a/openerp/addons/base/ir/ir_ui_view_view.xml +++ b/openerp/addons/base/ir/ir_ui_view_view.xml @@ -86,6 +86,7 @@ + @@ -114,7 +115,7 @@ Customized Views ir.actions.act_window ir.ui.view.custom - Customized views are used when users reorganize the content of their dashboard views (via web client) +

Click here to create a customized view

Customized views are used when users reorganize the content of their dashboard views (via web client)

diff --git a/openerp/addons/base/ir/ir_values_view.xml b/openerp/addons/base/ir/ir_values_view.xml index 57457e4e9a3..b94c6870ab6 100644 --- a/openerp/addons/base/ir/ir_values_view.xml +++ b/openerp/addons/base/ir/ir_values_view.xml @@ -34,13 +34,14 @@ - + + diff --git a/openerp/addons/base/module/module.py b/openerp/addons/base/module/module.py index b82e6b8242d..adf21580965 100644 --- a/openerp/addons/base/module/module.py +++ b/openerp/addons/base/module/module.py @@ -144,6 +144,15 @@ class module(osv.osv): _rec_name = "shortdesc" _description = "Module" + def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False): + res = super(module, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=False) + result = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'action_server_module_immediate_install')[1] + if view_type == 'form': + if res.get('toolbar',False): + list = [rec for rec in res['toolbar']['action'] if rec.get('id', False) != result] + res['toolbar'] = {'action': list} + return res + @classmethod def get_module_info(cls, name): info = {} diff --git a/openerp/addons/base/module/module_view.xml b/openerp/addons/base/module/module_view.xml index 8dac5b2dc27..110b607fd4e 100644 --- a/openerp/addons/base/module/module_view.xml +++ b/openerp/addons/base/module/module_view.xml @@ -111,9 +111,11 @@ -