summaryrefslogtreecommitdiff
path: root/addons/l10n_it_edi_sdicoop/models/res_config_settings.py
diff options
context:
space:
mode:
authorstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
committerstephanchrst <stephanchrst@gmail.com>2022-05-10 21:51:50 +0700
commit3751379f1e9a4c215fb6eb898b4ccc67659b9ace (patch)
treea44932296ef4a9b71d5f010906253d8c53727726 /addons/l10n_it_edi_sdicoop/models/res_config_settings.py
parent0a15094050bfde69a06d6eff798e9a8ddf2b8c21 (diff)
initial commit 2
Diffstat (limited to 'addons/l10n_it_edi_sdicoop/models/res_config_settings.py')
-rw-r--r--addons/l10n_it_edi_sdicoop/models/res_config_settings.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/addons/l10n_it_edi_sdicoop/models/res_config_settings.py b/addons/l10n_it_edi_sdicoop/models/res_config_settings.py
new file mode 100644
index 00000000..04d78743
--- /dev/null
+++ b/addons/l10n_it_edi_sdicoop/models/res_config_settings.py
@@ -0,0 +1,25 @@
+# -*- coding: utf-8 -*-
+
+from odoo import api, models, fields
+
+
+class ResConfigSettings(models.TransientModel):
+ _inherit = 'res.config.settings'
+
+ is_edi_proxy_active = fields.Boolean(compute='_compute_is_edi_proxy_active')
+
+ @api.depends('company_id.account_edi_proxy_client_ids', 'company_id.account_edi_proxy_client_ids.active')
+ def _compute_is_edi_proxy_active(self):
+ for config in self:
+ config.is_edi_proxy_active = config.company_id.account_edi_proxy_client_ids
+
+ def button_create_proxy_user(self):
+ # For now, only fattura_pa uses the proxy.
+ # To use it for more, we have to either make the activation of the proxy on a format basis
+ # or create a user per format here (but also when installing new formats)
+ fattura_pa = self.env.ref('l10n_it_edi.edi_fatturaPA')
+ edi_identification = fattura_pa._get_proxy_identification(self.company_id)
+ if not edi_identification:
+ return
+
+ self.env['account_edi_proxy_client.user']._register_proxy_user(self.company_id, fattura_pa, edi_identification)