2009-02-17 11:46:14 +01:00
|
|
|
#This file is part of Tryton. The COPYRIGHT file at the top level of
|
|
|
|
|
#this repository contains the full copyright notices and license terms.
|
2009-02-28 17:00:24 +01:00
|
|
|
from trytond.model import ModelView, ModelSQL, fields
|
2008-03-03 18:36:08 +01:00
|
|
|
|
2008-03-04 11:56:55 +01:00
|
|
|
|
2009-02-28 17:00:24 +01:00
|
|
|
class Category(ModelSQL, ModelView):
|
2008-03-03 18:36:08 +01:00
|
|
|
"Product Category"
|
|
|
|
|
_name = "product.category"
|
|
|
|
|
_description = __doc__
|
|
|
|
|
|
2008-09-17 12:32:45 +02:00
|
|
|
name = fields.Char('Name', required=True, translate=True)
|
2008-05-13 11:47:29 +02:00
|
|
|
parent = fields.Many2One('product.category','Parent', select=1)
|
2008-03-03 18:36:08 +01:00
|
|
|
childs = fields.One2Many('product.category', 'parent',
|
2009-03-19 19:57:09 +01:00
|
|
|
string='Children')
|
2008-03-03 18:36:08 +01:00
|
|
|
|
2008-04-22 17:49:25 +02:00
|
|
|
def __init__(self):
|
|
|
|
|
super(Category, self).__init__()
|
2008-06-10 13:53:46 +02:00
|
|
|
self._order.insert(0, ('name', 'ASC'))
|
2008-04-22 17:49:25 +02:00
|
|
|
|
2009-02-17 11:46:14 +01:00
|
|
|
def get_rec_name(self, cursor, user, ids, name, arg, context=None):
|
2008-06-07 21:18:45 +02:00
|
|
|
if not ids:
|
2009-02-17 11:46:14 +01:00
|
|
|
return {}
|
|
|
|
|
res = {}
|
2008-03-03 18:36:08 +01:00
|
|
|
categories = self.browse(cursor, user, ids, context=context)
|
|
|
|
|
for category in categories:
|
|
|
|
|
if category.parent:
|
|
|
|
|
name = category.parent.name+' / '+ category.name
|
|
|
|
|
else:
|
|
|
|
|
name = category.name
|
2009-02-17 11:46:14 +01:00
|
|
|
res[category.id] = name
|
2008-03-03 18:36:08 +01:00
|
|
|
return res
|
|
|
|
|
|
|
|
|
|
Category()
|