summaryrefslogtreecommitdiff
path: root/addons/im_livechat
diff options
context:
space:
mode:
authorXavier-Do <xdo@odoo.com>2019-04-12 13:21:18 +0000
committerThibault Delavallée <tde@odoo.com>2019-05-29 13:34:32 +0000
commitde7c119e666d108564b3889d1c08e5bf2e4da082 (patch)
tree3c24844df7072ba840d93fb1f2b141ad7a507fa3 /addons/im_livechat
parent2fcb3c658df3e504b92ff9b5a805d150cfa7effd (diff)
[IMP] mail: reduce message_post query count and clean code
Purpose of this commit is to improve performance of post and notify through various code improvements. Containing * making of _notify_customize_recipients a mail.thread method; * _message_auto_subscribe_followers optimized; * renaming and optimisation of _notify_partners; * message_post_attachements optization; * remove unused mail_post_autofollow_partner_ids context key; * minimize message create queries; * only check record related access right for thread messages not in pending moderation; * get attachements from values instead of db; * storing lang in ctx from the beginning; * don't track on write on attachments; Related to task 1943901 Linked to PR #32404
Diffstat (limited to 'addons/im_livechat')
-rw-r--r--addons/im_livechat/models/mail_channel.py4
1 files changed, 2 insertions, 2 deletions
diff --git a/addons/im_livechat/models/mail_channel.py b/addons/im_livechat/models/mail_channel.py
index cb3f57f689c..bb9a07a8158 100644
--- a/addons/im_livechat/models/mail_channel.py
+++ b/addons/im_livechat/models/mail_channel.py
@@ -48,7 +48,7 @@ class MailChannel(models.Model):
record.is_chat = True
@api.multi
- def _channel_message_notifications(self, message):
+ def _channel_message_notifications(self, message, message_format=False):
""" When a anonymous user create a mail.channel, the operator is not notify (to avoid massive polling when
clicking on livechat button). So when the anonymous person is sending its FIRST message, the channel header
should be added to the notification, since the user cannot be listining to the channel.
@@ -56,7 +56,7 @@ class MailChannel(models.Model):
livechat_channels = self.filtered(lambda x: x.channel_type == 'livechat')
other_channels = self.filtered(lambda x: x.channel_type != 'livechat')
notifications = super(MailChannel, livechat_channels)._channel_message_notifications(message.with_context(im_livechat_use_username=True)) + \
- super(MailChannel, other_channels)._channel_message_notifications(message)
+ super(MailChannel, other_channels)._channel_message_notifications(message, message_format)
for channel in self:
# add uuid for private livechat channels to allow anonymous to listen
if channel.channel_type == 'livechat' and channel.public == 'private':