diff --git a/apps_product_creator/__manifest__.py b/apps_product_creator/__manifest__.py index 26b47d6a..63dd8fec 100644 --- a/apps_product_creator/__manifest__.py +++ b/apps_product_creator/__manifest__.py @@ -4,10 +4,10 @@ 'name': 'Github product creator', 'summary': 'Create a product variant (by version) for every module found ' 'in the Github repositories', - 'version': '11.0.1.1.2', + 'version': '11.0.1.1.3', 'category': 'Connector', 'license': 'AGPL-3', - 'author': 'Odoo Community Association (OCA)', + 'author': 'Odoo Community Association (OCA), BizzAppDev', 'depends': [ 'github_connector_oca', 'github_connector_odoo', diff --git a/apps_product_creator/models/__init__.py b/apps_product_creator/models/__init__.py index 547d77b9..16115c1e 100644 --- a/apps_product_creator/models/__init__.py +++ b/apps_product_creator/models/__init__.py @@ -1,3 +1,4 @@ from . import product_template from . import product_product from . import odoo_module +from . import odoo_module_version diff --git a/apps_product_creator/models/odoo_module_version.py b/apps_product_creator/models/odoo_module_version.py new file mode 100644 index 00000000..66f39ba6 --- /dev/null +++ b/apps_product_creator/models/odoo_module_version.py @@ -0,0 +1,25 @@ +# Copyright (C) 2017-Today: Odoo Community Association (OCA), BizzAppDev +# License AGPL-3.0 or later (http://www.gnu.org/licenses/agpl.html). +from odoo import models, api + + +class OdooModuleVersion(models.Model): + _inherit = 'odoo.module.version' + + @api.multi + def _process_clean_module_version(self): + product_obj = self.env['product.product'] + for module_version in self: + product = product_obj.search( + [('odoo_module_version_id', '=', module_version.id)]) + product.write({'active': False}) + active_variants = product_obj.search_count( + [ + ('product_tmpl_id', '=', product.product_tmpl_id.id), + ('active', '=', True) + ] + ) + if not active_variants: + product.product_tmpl_id.write( + {'active': False, 'website_published': False}) + return super(OdooModuleVersion, self)._process_clean_module_version()