summaryrefslogtreecommitdiffstats
path: root/models/checklists.js
diff options
context:
space:
mode:
authorAndrés Manelli <andresmanelli@gmail.com>2019-02-23 16:36:29 +0100
committerAndrés Manelli <andresmanelli@gmail.com>2019-02-24 00:05:00 +0100
commit0fec7115451ba3b49442965c8160df4911157601 (patch)
tree12364d6c96f0900aea318b16863a246b6c6dd9ee /models/checklists.js
parent7a6afb8aea2c3398ec0fe34d664398bd94cac90a (diff)
downloadwekan-0fec7115451ba3b49442965c8160df4911157601.tar.gz
wekan-0fec7115451ba3b49442965c8160df4911157601.tar.bz2
wekan-0fec7115451ba3b49442965c8160df4911157601.zip
Prepare to create card from template
Diffstat (limited to 'models/checklists.js')
-rw-r--r--models/checklists.js13
1 files changed, 13 insertions, 0 deletions
diff --git a/models/checklists.js b/models/checklists.js
index a372fafa..99e9f25e 100644
--- a/models/checklists.js
+++ b/models/checklists.js
@@ -48,6 +48,19 @@ Checklists.attachSchema(new SimpleSchema({
}));
Checklists.helpers({
+ copy(newCardId) {
+ const oldChecklistId = this._id;
+ this._id = null;
+ this.cardId = newCardId;
+ const newChecklistId = Checklists.insert(this);
+ ChecklistItems.find({checklistId: oldChecklistId}).forEach((item) => {
+ item._id = null;
+ item.checklistId = newChecklistId;
+ item.cardId = newCardId;
+ ChecklistItems.insert(item);
+ });
+ },
+
itemCount() {
return ChecklistItems.find({ checklistId: this._id }).count();
},