From 81d00a94719ff9e395d789c6c862f2fd81f54613 Mon Sep 17 00:00:00 2001 From: Keven Kurz PC Date: Sun, 29 Oct 2017 17:36:31 +0100 Subject: Covered case of no admin and no self mapping. Now importer is always admin of the imported board so that no undeletable boards can be created. --- models/wekanCreator.js | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'models') diff --git a/models/wekanCreator.js b/models/wekanCreator.js index c77143ca..ae8e32ca 100644 --- a/models/wekanCreator.js +++ b/models/wekanCreator.js @@ -140,7 +140,13 @@ export class WekanCreator { // very old boards won't have a creation activity so no creation date createdAt: this._now(boardToImport.createdAt), labels: [], - members: [], + members: [{ + userId: Meteor.userId(), + wekanId: Meteor.userId(), + isActive: true, + isAdmin: true, + isCommentOnly: false, + }], // Standalone Export has modifiedAt missing, adding modifiedAt to fix it modifiedAt: this._now(boardToImport.modifiedAt), permission: boardToImport.permission, @@ -152,12 +158,10 @@ export class WekanCreator { if(boardToImport.members) { boardToImport.members.forEach((wekanMember) => { // do we already have it in our list? - const foundWekanMember = boardToCreate.members.find((member) => member.wekanId === wekanMember.wekanId); - if(!foundWekanMember) + if(!boardToCreate.members.some((member) => member.wekanId === wekanMember.wekanId)) boardToCreate.members.push({ ... wekanMember, userId: wekanMember.wekanId, - ...Meteor.userId() === wekanMember.wekanId ? {isAdmin: true} : {}, // make impoter admin }); }); } -- cgit v1.2.3-1-g7c22