obook/website_product_retail/models/product_template.py

33 lines
1.3 KiB
Python

from odoo import tools, models, fields, api, _
class ProductTemplate(models.Model):
_inherit = "product.template"
@api.model
def create(self, vals):
vals = self.set_distribution_fields(vals)
return super(ProductTemplate, self).create(vals)
def write(self, vals):
vals = self.set_distribution_fields(vals)
return super().write(vals)
def set_distribution_fields(self, vals):
if 'in_distribution_music' in vals:
if self.env.user.company_id.web_cat_in_distribution_musica:
category_id = self.env.user.company_id.web_cat_in_distribution_musica.id
elif 'in_distribution' in vals:
if self.env.user.company_id.web_cat_in_distribution_libros:
category_id = self.env.user.company_id.web_cat_in_distribution_libros.id
else:
return vals
if vals.get('in_distribution', False) or vals.get('in_distribution_music', False):
vals['public_categ_ids'] = [(4,category_id)]
if self.env.user.company_id.web_ribbon_in_distribution:
ribbon_id = self.env.user.company_id.web_ribbon_in_distribution.id
vals['website_ribbon_id'] = ribbon_id
else:
vals['public_categ_ids'] = [(3,category_id)]
vals['website_ribbon_id'] = False
return vals