From 7b02b88645aee70a6523011dbdbfa01eec5c350b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thibault=20Delavall=C3=A9e?= Date: Tue, 21 May 2019 13:39:40 +0000 Subject: [PATCH] [FIX] sms: correctly support not mail.thread / void model in composer SMS composer would like to support sending message to not mail.thread models or support direct recipients as default / create. However issues in the code prevent to effectively support that. Related to task 1922163 Linked to PR #33567 --- addons/sms/wizard/send_sms.py | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/addons/sms/wizard/send_sms.py b/addons/sms/wizard/send_sms.py index 5b3ee302144..e58143209e0 100644 --- a/addons/sms/wizard/send_sms.py +++ b/addons/sms/wizard/send_sms.py @@ -61,12 +61,11 @@ class SendSMS(models.TransientModel): @api.model def default_get(self, fields): result = super(SendSMS, self).default_get(fields) - active_model = self.env.context.get('active_model') - model = self.env[active_model] - records = self._get_records(model) - if getattr(records, '_get_default_sms_recipients') and not self.env.context.get('default_recipients'): + if not self.env.context.get('default_recipients') and active_model and hasattr(self.env[active_model], '_get_default_sms_recipients'): + model = self.env[active_model] + records = self._get_records(model) partners = records._get_default_sms_recipients() phone_numbers = [] no_phone_partners = [] @@ -86,9 +85,9 @@ class SendSMS(models.TransientModel): numbers = [number.strip() for number in self.recipients.split(',') if number.strip()] active_model = self.env.context.get('active_model') - model = self.env[active_model] - records = self._get_records(model) - if getattr(records, 'message_post_send_sms'): + if active_model and hasattr(self.env[active_model], 'message_post_send_sms'): + model = self.env[active_model] + records = self._get_records(model) records.message_post_send_sms(self.message, numbers=numbers) else: self.env['sms.api']._send_sms(numbers, self.message)