File tree Expand file tree Collapse file tree 1 file changed +22
-3
lines changed Expand file tree Collapse file tree 1 file changed +22
-3
lines changed Original file line number Diff line number Diff line change @@ -693,9 +693,28 @@ function calculateChallengeEndDate (challenge, data) {
693
693
*/
694
694
async function listChallengesByMember ( memberId ) {
695
695
const token = await getM2MToken ( )
696
- const url = `${ config . RESOURCES_API_URL } /${ memberId } /challenges?perPage=10000`
697
- const res = await axios . get ( url , { headers : { Authorization : `Bearer ${ token } ` } } )
698
- return res . data || [ ]
696
+ let allIds = [ ]
697
+ // get search is paginated, we need to get all pages' data
698
+ let page = 1
699
+ while ( true ) {
700
+ const result = await axios . get ( `${ config . RESOURCES_API_URL } /${ memberId } /challenges` , {
701
+ headers : { Authorization : `Bearer ${ token } ` } ,
702
+ params : {
703
+ page,
704
+ perPage : 10000
705
+ }
706
+ } )
707
+ const ids = result . data || [ ]
708
+ if ( ids . length === 0 ) {
709
+ break
710
+ }
711
+ allIds = allIds . concat ( ids )
712
+ page += 1
713
+ if ( result . headers [ 'x-total-pages' ] && page > Number ( result . headers [ 'x-total-pages' ] ) ) {
714
+ break
715
+ }
716
+ }
717
+ return allIds
699
718
}
700
719
701
720
/**
You can’t perform that action at this time.
0 commit comments