Bläddra i källkod

Add migration script to add sort field to checklists and their items

Ghassen Rjab 7 år sedan
förälder
incheckning
6921452a7d
1 ändrade filer med 26 tillägg och 0 borttagningar
  1. 26 0
      server/migrations.js

+ 26 - 0
server/migrations.js

@@ -130,3 +130,29 @@ Migrations.add('add-member-isactive-field', () => {
     Boards.update(board._id, {$set: {members: newMemberSet}}, noValidate);
   });
 });
+
+Migrations.add('add-sort-checklists', () => {
+  Checklists.find().forEach((checklist, index) => {
+    if (!checklist.hasOwnProperty('sort')) {
+      Checklists.direct.update(
+        checklist._id,
+        {
+          $set: {
+            sort: index,
+            newItemIndex: checklist.items.length,
+          }
+        },
+        noValidate
+      );
+    }
+    checklist.items.forEach(function(item, index) {
+      if (!item.hasOwnProperty('sort')) {
+        Checklists.direct.update(
+          { _id: checklist._id, "items._id": item._id },
+          { $set: { "items.$.sort": index } },
+          noValidate
+        );
+      }
+    });
+  });
+});