From 6ff0cf91e2fe6fd0e777225eb7afb3b37ac313e7 Mon Sep 17 00:00:00 2001 From: Ghassen Rjab Date: Sat, 2 Sep 2017 07:17:42 +0100 Subject: Add source field to imported attachments We use this field to prevent adding attachments' related activities automatically only. Then this field will be removed. --- models/attachments.js | 25 +++++++++++++++++-------- models/trelloCreator.js | 3 +++ models/wekanCreator.js | 6 ++++++ 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/models/attachments.js b/models/attachments.js index 3e5d4437..40adda49 100644 --- a/models/attachments.js +++ b/models/attachments.js @@ -55,14 +55,23 @@ if (Meteor.isServer) { if (Meteor.isServer) { Attachments.files.after.insert((userId, doc) => { - Activities.insert({ - userId, - type: 'card', - activityType: 'addAttachment', - attachmentId: doc._id, - boardId: doc.boardId, - cardId: doc.cardId, - }); + // If the attachment doesn't have a source field + // or its source is different than import + if (!doc.source || doc.source !== 'import') { + // Add activity about adding the attachment + Activities.insert({ + userId, + type: 'card', + activityType: 'addAttachment', + attachmentId: doc._id, + boardId: doc.boardId, + cardId: doc.cardId, + }); + } else { + // Don't add activity about adding the attachment as the activity + // be imported and delete source field + Attachments.update( {_id: doc._id} , {$unset: { source : "" } } ); + } }); Attachments.files.after.remove((userId, doc) => { diff --git a/models/trelloCreator.js b/models/trelloCreator.js index 44030ea5..b0e3325b 100644 --- a/models/trelloCreator.js +++ b/models/trelloCreator.js @@ -323,6 +323,9 @@ export class TrelloCreator { file.boardId = boardId; file.cardId = cardId; file.userId = this._user(att.idMemberCreator); + // The field source will only be used to prevent adding + // attachments' related activities automatically + file.source = 'import'; if (error) { throw(error); } else { diff --git a/models/wekanCreator.js b/models/wekanCreator.js index d96ad2ca..3d0a2397 100644 --- a/models/wekanCreator.js +++ b/models/wekanCreator.js @@ -313,6 +313,9 @@ export class WekanCreator { file.boardId = boardId; file.cardId = cardId; file.userId = this._user(att.userId); + // The field source will only be used to prevent adding + // attachments' related activities automatically + file.source = 'import'; if (error) { throw(error); } else { @@ -332,6 +335,9 @@ export class WekanCreator { file.boardId = boardId; file.cardId = cardId; file.userId = this._user(att.userId); + // The field source will only be used to prevent adding + // attachments' related activities automatically + file.source = 'import'; if (error) { throw(error); } else { -- cgit v1.2.3-1-g7c22