summaryrefslogtreecommitdiffstats
path: root/models
diff options
context:
space:
mode:
authorJustin Reynolds <justinr1234@gmail.com>2019-09-05 12:29:45 -0500
committerJustin Reynolds <justinr1234@gmail.com>2019-09-05 12:29:45 -0500
commit3b9f2ca7c2fffa230bb0c6d4254a88deb9fbb023 (patch)
tree356ab6f5693852464bdb975934c53f63445e6d5f /models
parent2c78aab3dc91ee276bfb5e4717ada72dc84ca3b0 (diff)
downloadwekan-3b9f2ca7c2fffa230bb0c6d4254a88deb9fbb023.tar.gz
wekan-3b9f2ca7c2fffa230bb0c6d4254a88deb9fbb023.tar.bz2
wekan-3b9f2ca7c2fffa230bb0c6d4254a88deb9fbb023.zip
Fixes #2596 incorrect date types for created & updated
Diffstat (limited to 'models')
-rw-r--r--models/accountSettings.js2
-rw-r--r--models/actions.js10
-rw-r--r--models/activities.js6
-rw-r--r--models/announcements.js2
-rw-r--r--models/boards.js2
-rw-r--r--models/cardComments.js2
-rw-r--r--models/cards.js2
-rw-r--r--models/checklistItems.js2
-rw-r--r--models/checklists.js2
-rw-r--r--models/customFields.js2
-rw-r--r--models/integrations.js2
-rw-r--r--models/invitationCodes.js2
-rw-r--r--models/lists.js2
-rw-r--r--models/org.js2
-rw-r--r--models/orgUser.js2
-rw-r--r--models/rules.js2
-rw-r--r--models/settings.js2
-rw-r--r--models/swimlanes.js2
-rw-r--r--models/triggers.js10
-rw-r--r--models/unsavedEdits.js2
-rw-r--r--models/users.js2
21 files changed, 62 insertions, 0 deletions
diff --git a/models/accountSettings.js b/models/accountSettings.js
index ed1087ca..f61614b8 100644
--- a/models/accountSettings.js
+++ b/models/accountSettings.js
@@ -20,6 +20,8 @@ AccountSettings.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/actions.js b/models/actions.js
index e9fa9114..8995d101 100644
--- a/models/actions.js
+++ b/models/actions.js
@@ -14,6 +14,16 @@ Actions.allow({
},
});
+Actions.before.insert((userId, doc) => {
+ doc.createdAt = new Date();
+ doc.modifiedAt = doc.createdAt;
+});
+
+Actions.before.update((userId, doc, fieldNames, modifier) => {
+ modifier.$set = modifier.$set || {};
+ modifier.$set.modifiedAt = new Date();
+});
+
Actions.helpers({
description() {
return this.desc;
diff --git a/models/activities.js b/models/activities.js
index 3ecd5c8c..8f7e1285 100644
--- a/models/activities.js
+++ b/models/activities.js
@@ -62,8 +62,14 @@ Activities.helpers({
//},
});
+Activities.before.update((userId, doc, fieldNames, modifier) => {
+ modifier.$set = modifier.$set || {};
+ modifier.$set.modifiedAt = new Date();
+});
+
Activities.before.insert((userId, doc) => {
doc.createdAt = new Date();
+ doc.modifiedAt = doc.createdAt;
});
Activities.after.insert((userId, doc) => {
diff --git a/models/announcements.js b/models/announcements.js
index c08710b8..7fdf8d8b 100644
--- a/models/announcements.js
+++ b/models/announcements.js
@@ -25,6 +25,8 @@ Announcements.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/boards.js b/models/boards.js
index b5f8b01b..af7685ae 100644
--- a/models/boards.js
+++ b/models/boards.js
@@ -55,6 +55,8 @@ Boards.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/cardComments.js b/models/cardComments.js
index 40723582..39477e14 100644
--- a/models/cardComments.js
+++ b/models/cardComments.js
@@ -34,6 +34,8 @@ CardComments.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/cards.js b/models/cards.js
index d92d003c..1414f6d7 100644
--- a/models/cards.js
+++ b/models/cards.js
@@ -107,6 +107,8 @@ Cards.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/checklistItems.js b/models/checklistItems.js
index e6451fbf..7f3ab095 100644
--- a/models/checklistItems.js
+++ b/models/checklistItems.js
@@ -44,6 +44,8 @@ ChecklistItems.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/checklists.js b/models/checklists.js
index f139192e..7ad9cae5 100644
--- a/models/checklists.js
+++ b/models/checklists.js
@@ -35,6 +35,8 @@ Checklists.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/customFields.js b/models/customFields.js
index 6b5697c1..cc798b16 100644
--- a/models/customFields.js
+++ b/models/customFields.js
@@ -78,6 +78,8 @@ CustomFields.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/integrations.js b/models/integrations.js
index 0b2e08c6..41334744 100644
--- a/models/integrations.js
+++ b/models/integrations.js
@@ -63,6 +63,8 @@ Integrations.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/invitationCodes.js b/models/invitationCodes.js
index 75db5708..abb30f32 100644
--- a/models/invitationCodes.js
+++ b/models/invitationCodes.js
@@ -18,6 +18,8 @@ InvitationCodes.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/lists.js b/models/lists.js
index e57849d7..9136c337 100644
--- a/models/lists.js
+++ b/models/lists.js
@@ -45,6 +45,8 @@ Lists.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/org.js b/models/org.js
index ce6f377e..a24d829d 100644
--- a/models/org.js
+++ b/models/org.js
@@ -98,6 +98,8 @@ Org.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/orgUser.js b/models/orgUser.js
index b671cb41..f310fa9c 100644
--- a/models/orgUser.js
+++ b/models/orgUser.js
@@ -49,6 +49,8 @@ OrgUser.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/rules.js b/models/rules.js
index 202071fc..2e6729cc 100644
--- a/models/rules.js
+++ b/models/rules.js
@@ -27,6 +27,8 @@ Rules.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/settings.js b/models/settings.js
index 4a0359d5..8eb02c5b 100644
--- a/models/settings.js
+++ b/models/settings.js
@@ -60,6 +60,8 @@ Settings.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/swimlanes.js b/models/swimlanes.js
index 769aaed3..46e410da 100644
--- a/models/swimlanes.js
+++ b/models/swimlanes.js
@@ -38,6 +38,8 @@ Swimlanes.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/triggers.js b/models/triggers.js
index 45f5e6fc..a95b1235 100644
--- a/models/triggers.js
+++ b/models/triggers.js
@@ -12,6 +12,16 @@ Triggers.mutations({
},
});
+Triggers.before.insert((userId, doc) => {
+ doc.createdAt = new Date();
+ doc.updatedAt = doc.createdAt;
+});
+
+Triggers.before.update((userId, doc, fieldNames, modifier) => {
+ modifier.$set = modifier.$set || {};
+ modifier.$set.updatedAt = new Date();
+});
+
Triggers.allow({
insert(userId, doc) {
return allowIsBoardAdmin(userId, Boards.findOne(doc.boardId));
diff --git a/models/unsavedEdits.js b/models/unsavedEdits.js
index 89418bfb..81331598 100644
--- a/models/unsavedEdits.js
+++ b/models/unsavedEdits.js
@@ -29,6 +29,8 @@ UnsavedEditCollection.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}
diff --git a/models/users.js b/models/users.js
index 55d85e07..ee53c7ab 100644
--- a/models/users.js
+++ b/models/users.js
@@ -54,6 +54,8 @@ Users.attachSchema(
autoValue() {
if (this.isInsert) {
return new Date();
+ } else if (this.isUpsert) {
+ return { $setOnInsert: new Date() };
} else {
this.unset();
}