@@ -363,30 +363,15 @@ function * getV5ChallengeId (challengeId) {
363
363
return challengeId
364
364
}
365
365
366
- /*
366
+ /**
367
367
* Get submission phase ID of a challenge from Challenge API
368
- * @param challengeId Challenge ID
368
+ * @param challenge Challenge
369
369
* @returns {Integer } Submission phase ID of the given challengeId
370
370
*/
371
- function * getSubmissionPhaseId ( challengeId ) {
371
+ function getSubmissionPhaseId ( challenge ) {
372
372
let phaseId = null
373
- let response
374
- challengeId = yield getV5ChallengeId ( challengeId )
375
-
376
- try {
377
- logger . info ( `Calling to challenge API to find submission phase Id for ${ challengeId } ` )
378
- const token = yield getM2Mtoken ( )
379
- response = yield request . get ( `${ config . CHALLENGEAPI_V5_URL } /${ challengeId } ` )
380
- . set ( 'Authorization' , `Bearer ${ token } ` )
381
- . set ( 'Content-Type' , 'application/json' )
382
- logger . info ( `returned from finding submission phase Id for ${ challengeId } ` )
383
- } catch ( ex ) {
384
- logger . error ( `Error while accessing ${ config . CHALLENGEAPI_V5_URL } /${ challengeId } ` )
385
- logger . debug ( 'Setting submissionPhaseId to Null' )
386
- response = null
387
- }
388
- if ( response ) {
389
- const phases = _ . get ( response . body , 'phases' , [ ] )
373
+ if ( challenge ) {
374
+ const phases = _ . get ( challenge , 'phases' , [ ] )
390
375
const checkPoint = _ . filter ( phases , { name : 'Checkpoint Submission' , isOpen : true } )
391
376
const submissionPh = _ . filter ( phases , { name : 'Submission' , isOpen : true } )
392
377
const finalFixPh = _ . filter ( phases , { name : 'Final Fix' , isOpen : true } )
@@ -404,14 +389,14 @@ function * getSubmissionPhaseId (challengeId) {
404
389
return phaseId
405
390
}
406
391
407
- /*
392
+ /**
408
393
* Function to check user access to create a submission
409
394
* @param authUser Authenticated user
410
395
* @param subEntity Submission Entity
396
+ * @param challengeDetails Challenge
411
397
* @returns {Promise }
412
398
*/
413
- function * checkCreateAccess ( authUser , subEntity ) {
414
- let challengeDetails
399
+ function * checkCreateAccess ( authUser , subEntity , challengeDetails ) {
415
400
let resources
416
401
417
402
const challengeId = yield getV5ChallengeId ( subEntity . challengeId )
@@ -423,18 +408,6 @@ function * checkCreateAccess (authUser, subEntity) {
423
408
424
409
const token = yield getM2Mtoken ( )
425
410
426
- try {
427
- logger . info ( `Calling to challenge API for fetch phases and winners for ${ challengeId } ` )
428
- challengeDetails = yield request . get ( `${ config . CHALLENGEAPI_V5_URL } /${ challengeId } ` )
429
- . set ( 'Authorization' , `Bearer ${ token } ` )
430
- . set ( 'Content-Type' , 'application/json' )
431
- logger . info ( `returned for ${ challengeId } with ${ JSON . stringify ( challengeDetails ) } ` )
432
- } catch ( ex ) {
433
- logger . error ( `Error while accessing ${ config . CHALLENGEAPI_V5_URL } /${ challengeId } ` )
434
- logger . error ( ex )
435
- throw new errors . HttpStatusError ( 503 , `Could not fetch details of challenge with id ${ challengeId } ` )
436
- }
437
-
438
411
try {
439
412
resources = yield request . get ( `${ config . RESOURCEAPI_V5_BASE_URL } /resources?challengeId=${ challengeId } ` )
440
413
. set ( 'Authorization' , `Bearer ${ token } ` )
@@ -462,7 +435,7 @@ function * checkCreateAccess (authUser, subEntity) {
462
435
} )
463
436
464
437
// Get phases and winner detail from challengeDetails
465
- const phases = challengeDetails . body . phases
438
+ const { phases } = challengeDetails
466
439
467
440
// Check if the User is assigned as the reviewer for the contest
468
441
const reviewers = _ . filter ( currUserRoles , { role : 'Reviewer' } )
@@ -482,7 +455,7 @@ function * checkCreateAccess (authUser, subEntity) {
482
455
throw new errors . HttpStatusError ( 403 , `Register for the contest before you can submit` )
483
456
}
484
457
485
- const submissionPhaseId = yield getSubmissionPhaseId ( subEntity . challengeId )
458
+ const submissionPhaseId = yield getSubmissionPhaseId ( challengeDetails )
486
459
487
460
if ( submissionPhaseId == null ) {
488
461
throw new errors . HttpStatusError ( 403 , 'You cannot create a submission in the current phase' )
0 commit comments