Skip to content

Commit f794db7

Browse files
update updated_at in user documents whenever user data is updated (#1980)
1 parent 6bd3452 commit f794db7

File tree

5 files changed

+12
-4
lines changed

5 files changed

+12
-4
lines changed

controllers/auth.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ const githubAuthCallback = (req, res, next) => {
8080
github_created_at: Number(new Date(user._json.created_at).getTime()),
8181
github_user_id: user.id,
8282
created_at: Date.now(),
83-
updated_at: Date.now(),
83+
updated_at: null,
8484
};
8585

8686
const { userId, incompleteUserDetails, role } = await users.addOrUpdate(userData);

controllers/staging.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ const updateRoles = async (req, res) => {
1515
...userData.roles,
1616
...req.body,
1717
},
18+
updated_at: Date.now(),
1819
},
1920
userId
2021
);
@@ -48,6 +49,7 @@ const removePrivileges = async (req, res) => {
4849
...member.roles,
4950
member: false,
5051
},
52+
updated_at: Date.now(),
5153
},
5254
member.id
5355
)
@@ -61,6 +63,7 @@ const removePrivileges = async (req, res) => {
6163
...superUser.roles,
6264
super_user: false,
6365
},
66+
updated_at: Date.now(),
6467
},
6568
superUser.id
6669
)

models/members.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@ const moveToMembers = async (userId) => {
5454
const roles = user.roles ? { ...user.roles, member: true } : { member: true };
5555
await userModel.doc(userId).update({
5656
roles,
57+
updated_at: Date.now(),
5758
});
5859
return { isAlreadyMember: false, movedToMember: true };
5960
} catch (err) {
@@ -101,6 +102,7 @@ const addArchiveRoleToMembers = async (userId) => {
101102
const roles = { ...user.roles, [ROLES.ARCHIVED]: true };
102103
await userModel.doc(userId).update({
103104
roles,
105+
updated_at: Date.now(),
104106
});
105107
return { isArchived: false };
106108
} catch (err) {

models/users.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ const addOrUpdate = async (userData, userId = null) => {
6161
user = await userModel.where("github_id", "==", userData.github_id).limit(1).get();
6262
}
6363
if (user && !user.empty && user.docs !== null) {
64-
await userModel.doc(user.docs[0].id).set(userData, { merge: true });
64+
await userModel.doc(user.docs[0].id).set({ ...userData, updated_at: Date.now() }, { merge: true });
6565
const data = user.docs[0].data();
6666
return {
6767
isNewUser: false,
@@ -308,6 +308,7 @@ const setIncompleteUserDetails = async (userId) => {
308308
if (doc.exists) {
309309
return userRef.update({
310310
incompleteUserDetails: false,
311+
updated_at: Date.now(),
311312
});
312313
}
313314
return {};
@@ -423,6 +424,7 @@ const updateUserPicture = async (image, userId) => {
423424
const userDoc = userModel.doc(userId);
424425
await userDoc.update({
425426
picture: image,
427+
updated_at: Date.now(),
426428
});
427429
} catch (err) {
428430
logger.error("Error updating user picture data", err);
@@ -788,7 +790,7 @@ const updateUsersInBatch = async (usersData) => {
788790
usersData.forEach((user) => {
789791
const id = user.id;
790792
delete user.id;
791-
bulkWriter.update(userModel.doc(id), user);
793+
bulkWriter.update(userModel.doc(id), { ...user, updated_at: Date.now() });
792794
});
793795

794796
await bulkWriter.close();
@@ -913,7 +915,7 @@ const addGithubUserId = async (page, size) => {
913915
})
914916
.then((data) => {
915917
const githubUserId = data.id;
916-
batchWrite.update(userDoc.ref, { github_user_id: `${githubUserId}` });
918+
batchWrite.update(userDoc.ref, { github_user_id: `${githubUserId}`, updated_at: Date.now() });
917919
countUserFound++;
918920
})
919921
.catch((error) => {

services/users.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ const archiveUsers = async (usersData) => {
1919
...user.roles,
2020
archived: true,
2121
},
22+
updated_at: Date.now(),
2223
};
2324
batch.update(userModel.doc(id), updatedUserData);
2425
usersBatch.push({ id, firstName, lastName });

0 commit comments

Comments
 (0)