@@ -536,25 +536,26 @@ class ChallengesService {
536
536
* @return {Promise } Resolves to the api response.
537
537
*/
538
538
async getRecommendedChallenges ( filter , handle ) {
539
- const query = getFilterUrl (
540
- filter . backendFilter ,
541
- { ... filter . frontFilter , per_page : filter . frontFilter . perPage } ,
542
- ) ;
539
+ filter . frontFilter . per_page = filter . frontFilter . perPage ;
540
+ delete filter . frontFilter . perPage ;
541
+
542
+ const query = getFilterUrl ( filter . backendFilter , filter . frontFilter ) ;
543
543
544
544
let res = { } ;
545
+ let totalCount = 0 ;
545
546
if ( _ . some ( filter . frontFilter . tracks , val => val )
546
547
&& ! _ . isEqual ( filter . frontFilter . types , [ ] ) ) {
547
548
const url = `/recommender-api/${ handle } ?${ query } ` ;
548
549
res = await this . private . apiV5 . get ( url ) . then ( checkErrorV5 ) ;
550
+ totalCount = res . headers . get ( 'x-total' ) || 0 ;
549
551
}
550
- const challenges = res . result . filter ( ch => ch . jaccard_index > 0 ) ;
551
552
552
- const totalCount = challenges . length ;
553
+ const challenges = res . result ? res . result . filter ( ch => ch . jaccard_index > 0 ) : [ ] ;
553
554
return {
554
555
challenges,
555
556
totalCount,
556
557
meta : {
557
- allChallengesCount : challenges . length ,
558
+ allChallengesCount : totalCount ,
558
559
allRecommendedChallengesCount : 0 ,
559
560
myChallengesCount : 0 ,
560
561
ongoingChallengesCount : 0 ,
0 commit comments