@@ -360,6 +360,8 @@ const getRdsUserInfoByGitHubUsername = async (githubUsername) => {
360
360
* @param {Array } query.levelNumber - Array of levelNumbers to filter the users on
361
361
* @param {Array } query.tagId - Array of tagIds to filter the users on
362
362
* @param {Array } query.state - Array of states to filter the users on
363
+ * @param {String } query.role - filter the users on
364
+ * @param {String } query.verified - filter the users on
363
365
* @return {Promise<Array> } - Array of user documents that match the filter criteria
364
366
*/
365
367
@@ -429,46 +431,35 @@ const fetchUsersWithRole = async (role) => {
429
431
const snapshot = await userModel . where ( `roles.${ role } ` , "==" , true ) . get ( ) ;
430
432
const onlyMembers = [ ] ;
431
433
432
- if ( ! snapshot . empty ) {
433
- snapshot . forEach ( ( doc ) => {
434
- onlyMembers . push ( {
435
- id : doc . id ,
436
- ...doc . data ( ) ,
437
- phone : undefined ,
438
- email : undefined ,
439
- tokens : undefined ,
440
- } ) ;
434
+ const roleQuery = query . role ;
435
+ const verifiedQuery = query . verified ;
436
+
437
+ if ( roleQuery ) {
438
+ const filteredUsers = [ ] ;
439
+ const snapshot = await userModel . where ( `roles.${ roleQuery } ` , "==" , true ) . get ( ) ;
440
+ snapshot . forEach ( ( doc ) => {
441
+ filteredUsers . push ( {
442
+ id : doc . id ,
443
+ ...doc . data ( ) ,
441
444
} ) ;
442
- }
445
+ } ) ;
443
446
444
- return onlyMembers ;
445
- } catch ( err ) {
446
- logger . error ( "Error retrieving users data with roles of inDiscord" , err ) ;
447
- throw err ;
447
+ return filteredUsers ;
448
448
}
449
- } ;
450
- const fetchUsersWhereFieldNotNull = async ( field ) => {
451
- try {
452
- const snapshot = await userModel . where ( field , "!=" , null ) . get ( ) ;
453
- const users = [ ] ;
454
-
455
- if ( ! snapshot . empty ) {
456
- snapshot . forEach ( ( doc ) => {
457
- users . push ( {
458
- id : doc . id ,
459
- ...doc . data ( ) ,
460
- phone : undefined ,
461
- email : undefined ,
462
- tokens : undefined ,
463
- } ) ;
449
+ if ( verifiedQuery ) {
450
+ console . log ( typeof verifiedQuery ) ;
451
+ const filteredUsers = [ ] ;
452
+ const snapshot = await userModel . orderBy ( "discordId" ) . get ( ) ;
453
+ snapshot . forEach ( ( doc ) => {
454
+ filteredUsers . push ( {
455
+ id : doc . id ,
456
+ ...doc . data ( ) ,
464
457
} ) ;
465
- }
458
+ } ) ;
466
459
467
- return users ;
468
- } catch ( err ) {
469
- logger . error ( "Error retrieving users data with roles of inDiscord" , err ) ;
470
- throw err ;
460
+ return filteredUsers ;
471
461
}
462
+ return [ ] ;
472
463
} ;
473
464
474
465
module . exports = {
0 commit comments