diff --git a/addons/mail/models/mail_activity.py b/addons/mail/models/mail_activity.py index cc53bab9fa7..4dc34056d90 100644 --- a/addons/mail/models/mail_activity.py +++ b/addons/mail/models/mail_activity.py @@ -317,6 +317,15 @@ class MailActivityMixin(models.AbstractModel): def _search_activity_summary(self, operator, operand): return [('activity_ids.summary', operator, operand)] + @api.multi + def write(self, vals): + # Delete activities of archived record. + if 'active' in vals and vals['active'] is False: + self.env['mail.activity'].sudo().search( + [('res_model', '=', self._name), ('res_id', 'in', self.ids)] + ).unlink() + return super(MailActivityMixin, self).write(vals) + @api.multi def unlink(self): """ Override unlink to delete records activities through (res_model, res_id). """