summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThibault Delavallée <tde@odoo.com>2019-05-21 13:39:40 +0000
committerThibault Delavallée <tde@odoo.com>2019-05-22 12:30:21 +0000
commit7b02b88645aee70a6523011dbdbfa01eec5c350b (patch)
treef3f2ee5c406c87a614a964999f8448a8532a61b6
parentb9e5b243ac3855caa66193849e7467199e770fef (diff)
[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
-rw-r--r--addons/sms/wizard/send_sms.py13
1 files 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)