[FIX] mail: update message count when messages are deleted

When a record was deleted, the related messages were removed in discuss
front-end but the message counter was not updated. This solves this issue.

Task-2960281

closes odoo/odoo#99371

Related: odoo/upgrade#3841
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
This commit is contained in:
Pierre-Yves Dufays
2022-11-02 10:40:05 +01:00
parent d25e930e8b
commit 7c6a24d84f
@@ -437,12 +437,26 @@ registerModel({
* @param {integer[]} param0.messag_ids
*/
_handleNotificationMessageDelete({ message_ids }) {
let deletedInboxMsg = 0;
let deletedStarredMsg = 0;
for (const id of message_ids) {
const message = this.messaging.models['Message'].findFromIdentifyingData({ id });
if (message) {
if (message.isNeedaction) {
deletedInboxMsg++;
}
if (message.isStarred) {
deletedStarredMsg++;
}
message.delete();
}
}
if (deletedInboxMsg) {
this.messaging.inbox.update({ counter: decrement(deletedInboxMsg) });
}
if (deletedStarredMsg) {
this.messaging.starred.update({ counter: decrement(deletedStarredMsg) });
}
},
/**
* @private