1
# -*- coding: utf-8 -*-
2
##############################################################################
4
# OpenERP, Open Source Management Solution
5
# Copyright (C) 2014 credativ Ltd (<http://credativ.co.uk>).
7
# This program is free software: you can redistribute it and/or modify
8
# it under the terms of the GNU Affero General Public License as
9
# published by the Free Software Foundation, either version 3 of the
10
# License, or (at your option) any later version.
12
# This program is distributed in the hope that it will be useful,
13
# but WITHOUT ANY WARRANTY; without even the implied warranty of
14
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
# GNU Affero General Public License for more details.
17
# You should have received a copy of the GNU Affero General Public License
18
# along with this program. If not, see <http://www.gnu.org/licenses/>.
20
##############################################################################
22
from openerp.osv import osv
24
class Product(osv.Model):
25
_inherit = 'product.product'
27
def name_get(self, cr, uid, ids, context=None):
29
Return the product name.
31
:param dict context: the ``product_display_format`` key can be used to
32
select a shorter version:
33
- ``'code'``: return just ``default_code``
34
- ``'name'``: return just the ``name`` field
35
- ``'default'``: use the default name_get()
39
if isinstance(ids, (int, long)):
42
display_format = context.get('product_display_format', 'default')
44
if display_format == 'name':
45
return [ (record['id'], record[display_format])
46
for record in self.read(cr, uid, ids, [display_format], context=context) ]
47
elif display_format == 'code':
48
return [ (record['id'], record.get('default_code') or record.get('name'))
49
for record in self.read(cr, uid, ids, ['default_code', 'name'], context=context) ]
51
return super(Product, self).name_get(cr, uid, ids, context=context)