From f42d06cfce80fcabacf1fcde1460f505b02c76cb Mon Sep 17 00:00:00 2001 From: Denis Bykhov Date: Tue, 11 Apr 2023 22:33:07 +0600 Subject: [PATCH] Dont notify child update (#2949) Signed-off-by: Denis Bykhov --- .../notification-resources/src/index.ts | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/server-plugins/notification-resources/src/index.ts b/server-plugins/notification-resources/src/index.ts index 98fa3e55be..6d4efd7ee7 100644 --- a/server-plugins/notification-resources/src/index.ts +++ b/server-plugins/notification-resources/src/index.ts @@ -603,13 +603,15 @@ export async function collaboratorDocHandler (tx: Tx, control: TriggerControl, t async function collectionCollabDoc (tx: TxCollectionCUD, control: TriggerControl): Promise { const actualTx = TxProcessor.extractTx(tx) let res = await collaboratorDocHandler(actualTx, control, tx._id) - const doc = (await control.findAll(tx.objectClass, { _id: tx.objectId }, { limit: 1 }))[0] - if (doc !== undefined) { - if (control.hierarchy.hasMixin(doc, notification.mixin.Collaborators)) { - const collabMixin = control.hierarchy.as(doc, notification.mixin.Collaborators) - res = res.concat( - await createCollabDocInfo(collabMixin.collaborators, tx, tx.objectId, tx.objectClass, control, tx._id) - ) + if ([core.class.TxCreateDoc, core.class.TxRemoveDoc].includes(actualTx._class)) { + const doc = (await control.findAll(tx.objectClass, { _id: tx.objectId }, { limit: 1 }))[0] + if (doc !== undefined) { + if (control.hierarchy.hasMixin(doc, notification.mixin.Collaborators)) { + const collabMixin = control.hierarchy.as(doc, notification.mixin.Collaborators) + res = res.concat( + await createCollabDocInfo(collabMixin.collaborators, tx, tx.objectId, tx.objectClass, control, tx._id) + ) + } } } return res