[FIX] mail_bot: only display odoobot once in mention suggestions
Before this commit odoobot was appearing twice in mention suggestions when talking to odoobot. The initial need to be able to ping odoobot from everywhere led to the override of channel_fetch_listeners. This is not usefull anymore. This fix simply removes this override to avoid this problem since we don't have a real use case where we need to ping odoobot in another channel. Task 1907142 closes odoo/odoo#28791
This commit is contained in:
@@ -11,13 +11,6 @@ class Channel(models.Model):
|
||||
super(Channel, self)._execute_command_help(**kwargs)
|
||||
self.env['mail.bot']._apply_logic(self, kwargs, command="help") # kwargs are not usefull but...
|
||||
|
||||
@api.model
|
||||
def channel_fetch_listeners(self, uuid):
|
||||
""" Return the id, name and email of partners listening to the given channel """
|
||||
result = super().channel_fetch_listeners(uuid)
|
||||
odoobot = self.env.ref("base.partner_root").sudo()
|
||||
return result + [{'id': odoobot.id, 'name': odoobot.name, 'email': odoobot.email}]
|
||||
|
||||
@api.model
|
||||
def init_odoobot(self):
|
||||
if self.env.user.odoobot_state == 'not_initialized':
|
||||
|
||||
@@ -24,6 +24,14 @@ class TestOdoobot(BaseFunctionalTest, MockEmails, TestRecipients):
|
||||
self.odoobot_ping_body = '<a href="http://odoo.com/web#model=res.partner&id=%s" class="o_mail_redirect" data-oe-id="%s" data-oe-model="res.partner" target="_blank">@OdooBot</a>' % (self.odoobot.id, self.odoobot.id)
|
||||
self.test_record_employe = self.test_record.sudo(self.user_employee)
|
||||
|
||||
@mute_logger('odoo.addons.mail.models.mail_mail')
|
||||
def test_fetch_listener(self):
|
||||
channel = self.env['mail.channel'].sudo(self.user_employee).init_odoobot()
|
||||
partners = self.env['mail.channel'].channel_fetch_listeners(channel.uuid)
|
||||
odoobot = self.env.ref("base.partner_root")
|
||||
odoobot_in_fetch_listeners = [partner for partner in partners if partner['id'] == odoobot.id]
|
||||
self.assertEqual(len(odoobot_in_fetch_listeners), 1, 'odoobot should appear only once in channel_fetch_listeners')
|
||||
|
||||
@mute_logger('odoo.addons.mail.models.mail_mail')
|
||||
def test_odoobot_ping(self):
|
||||
kwargs = self.message_post_default_kwargs.copy()
|
||||
|
||||
Reference in New Issue
Block a user