From dea48f80ef0f92468ce66db6b5e4682d46233d3d Mon Sep 17 00:00:00 2001 From: Laurent Smet Date: Tue, 12 Mar 2024 16:37:49 +0100 Subject: [PATCH] [IMP] l10n_mx: Don't allow to uninstall l10n_mx_edi from settings closes odoo/odoo#157608 X-original-commit: ed209b840c45faa20fcab4f7498cbb5285662fce Signed-off-by: Florian Gilbert (flg) Signed-off-by: Laurent Smet (las) --- addons/l10n_mx/models/res_config_settings.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/addons/l10n_mx/models/res_config_settings.py b/addons/l10n_mx/models/res_config_settings.py index a0776b7022b4d..757dacfa8a284 100644 --- a/addons/l10n_mx/models/res_config_settings.py +++ b/addons/l10n_mx/models/res_config_settings.py @@ -1,9 +1,19 @@ # -*- coding: utf-8 -*- -from odoo import fields, models +from odoo import api, fields, models class ResConfigSettings(models.TransientModel): _inherit = 'res.config.settings' module_l10n_mx_edi = fields.Boolean('Mexican Electronic Invoicing') + + @api.model + def get_views(self, views, options=None): + # HACK to not show the view since it uninstalls the module if unticked! + # However, we don't want to force the upgrade of the module. + # 'module_l10n_mx_edi' will be removed in master. + mx_view = self.env.ref('l10n_mx.res_config_settings_view_form', raise_if_not_found=False).sudo() + if mx_view.active: + mx_view.active = False + return super().get_views(views, options)