diff --git a/addons/event/models/res_config_settings.py b/addons/event/models/res_config_settings.py index 15af322830c..14f5aebf6d9 100644 --- a/addons/event/models/res_config_settings.py +++ b/addons/event/models/res_config_settings.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- -from odoo import fields, models +from odoo import api, fields, models class ResConfigSettings(models.TransientModel): _inherit = 'res.config.settings' @@ -14,3 +14,14 @@ class ResConfigSettings(models.TransientModel): module_website_event_questions = fields.Boolean("Registration Survey") module_event_barcode = fields.Boolean("Barcode") module_website_event_sale = fields.Boolean("Online Ticketing") + + @api.onchange('module_website_event_track') + def _onchange_module_website_event_track(self): + """ Reset sub-modules, otherwise you may have track to False but still + have track_live or track_quiz to True, meaning track will come back due + to dependencies of modules. """ + for config in self: + if not config.module_website_event_track: + config.module_website_event_track_live = False + config.module_website_event_track_quiz = False + config.module_website_event_track_exhibitor = False