diff options
-rw-r--r-- | CHANGELOG.md | 8 | ||||
-rw-r--r-- | models/trelloCreator.js | 2 | ||||
-rw-r--r-- | models/wekanCreator.js | 6 |
3 files changed, 14 insertions, 2 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md index 6ccdd96c..be7259ff 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,11 @@ +# Upcoming Wekan release + +This release adds the following new features: + +* [Import checklist sort attributes from Wekan and Trello](https://github.com/wekan/wekan/pull/1226) + +Thanks to GitHub user GhassenRjab for contributions. + # v0.38 2017-09-14 Wekan release This release adds the following new features: diff --git a/models/trelloCreator.js b/models/trelloCreator.js index b296efdf..e7f98e85 100644 --- a/models/trelloCreator.js +++ b/models/trelloCreator.js @@ -403,6 +403,7 @@ export class TrelloCreator { cardId: this.cards[checklist.idCard], title: checklist.name, createdAt: this._now(), + sort: checklist.pos, }; const checklistId = Checklists.direct.insert(checklistToCreate); // keep track of Trello id => WeKan id @@ -414,6 +415,7 @@ export class TrelloCreator { _id: checklistId + itemsToCreate.length, title: item.name, isFinished: item.state === 'complete', + sort: item.pos, }); }); Checklists.direct.update(checklistId, {$set: {items: itemsToCreate}}); diff --git a/models/wekanCreator.js b/models/wekanCreator.js index 9c7f50ec..3cd65fd7 100644 --- a/models/wekanCreator.js +++ b/models/wekanCreator.js @@ -410,23 +410,25 @@ export class WekanCreator { } createChecklists(wekanChecklists) { - wekanChecklists.forEach((checklist) => { + wekanChecklists.forEach((checklist, checklistIndex) => { // Create the checklist const checklistToCreate = { cardId: this.cards[checklist.cardId], title: checklist.title, createdAt: checklist.createdAt, + sort: checklist.sort ? checklist.sort : checklistIndex, }; const checklistId = Checklists.direct.insert(checklistToCreate); // keep track of Wekan id => WeKan id this.checklists[checklist._id] = checklistId; // Now add the items to the checklist const itemsToCreate = []; - checklist.items.forEach((item) => { + checklist.items.forEach((item, itemIndex) => { itemsToCreate.push({ _id: checklistId + itemsToCreate.length, title: item.title, isFinished: item.isFinished, + sort: item.sort ? item.sort : itemIndex, }); }); Checklists.direct.update(checklistId, {$set: {items: itemsToCreate}}); |