diff --git a/addons/mail/models/mail_channel.py b/addons/mail/models/mail_channel.py index e569bd8e56f..daac4829235 100644 --- a/addons/mail/models/mail_channel.py +++ b/addons/mail/models/mail_channel.py @@ -142,7 +142,10 @@ class Channel(models.Model): @api.multi def action_follow(self): - return self.write({'channel_last_seen_partner_ids': [(0, 0, {'partner_id': self.env.user.partner_id.id})]}) + self.ensure_one() + channel_partner = self.mapped('channel_last_seen_partner_ids').filtered(lambda cp: cp.partner_id == self.env.user.partner_id) + if not channel_partner: + return self.write({'channel_last_seen_partner_ids': [(0, 0, {'partner_id': self.env.user.partner_id.id})]}) @api.multi def action_unfollow(self):