Skip to content

Commit fa12add

Browse files
model: snapshot to fetch members with role:member
1 parent 91c723b commit fa12add

File tree

2 files changed

+33
-4
lines changed

2 files changed

+33
-4
lines changed

controllers/members.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
const { fetchMembers, migrateUsers, deleteIsMemberProperty } = require('../models/members')
1+
const { fetchMembers, migrateUsers, deleteIsMemberProperty, fetchOnlyMembers } = require('../models/members')
22
const tasks = require('../models/tasks')
33

44
/**
@@ -31,9 +31,9 @@ const getMembers = async (req, res) => {
3131

3232
const getIdleMembers = async (req, res) => {
3333
try {
34-
const allMembers = await fetchMembers()
34+
const onlyMembers = await fetchOnlyMembers()
3535
const taskParticipants = await tasks.fetchActiveTaskMembers()
36-
const idleMembers = allMembers?.filter(({ id }) => !taskParticipants.has(id))
36+
const idleMembers = onlyMembers?.filter(({ id }) => !taskParticipants.has(id))
3737
const idleMemberUserNames = idleMembers?.map((member) => member.username)
3838

3939
return res.json({

models/members.js

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,37 @@ const deleteIsMemberProperty = async () => {
9898
}
9999
}
100100

101+
/**
102+
* Fetches the data about our members with role member:true
103+
* @return {Promise<userModel|Array>}
104+
*/
105+
106+
const fetchOnlyMembers = async () => {
107+
try {
108+
const snapshot = await userModel.where('roles.member', '==', true).get()
109+
const onlyMembers = []
110+
111+
if (!snapshot.empty) {
112+
snapshot.forEach((doc) => {
113+
onlyMembers.push({
114+
id: doc.id,
115+
...doc.data(),
116+
phone: undefined,
117+
email: undefined,
118+
tokens: undefined
119+
})
120+
})
121+
}
122+
return onlyMembers
123+
} catch (err) {
124+
logger.error('Error retrieving members data with roles of member', err)
125+
throw err
126+
}
127+
}
128+
101129
module.exports = {
102130
fetchMembers,
103131
migrateUsers,
104-
deleteIsMemberProperty
132+
deleteIsMemberProperty,
133+
fetchOnlyMembers
105134
}

0 commit comments

Comments
 (0)