Skip to content
This repository was archived by the owner on Jan 23, 2025. It is now read-only.

Commit d643aa5

Browse files
authored
Merge pull request #23 from topcoder-platform/feature/negative_length_error_fix
Fixed end date calculation
2 parents ac57222 + f20786d commit d643aa5

File tree

2 files changed

+8
-7
lines changed

2 files changed

+8
-7
lines changed

.circleci/config.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ workflows:
7070
branches:
7171
only:
7272
- develop
73+
- feature/negative_length_error_fix
7374

7475
# Production builds are exectuted only on tagged commits to the
7576
# master branch.

src/services/ProcessorService.js

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -166,23 +166,23 @@ async function parsePayload (payload, m2mToken, isCreated = true, informixGroupI
166166
data.detailedRequirements += '\n\r'
167167
data.detailedRequirements += 'V5 Challenge - Additional Details: ' + payload.id
168168
}
169-
169+
const SECONDS_TO_MILLIS = 1000
170170
if (payload.phases) {
171171
const registrationPhase = _.find(payload.phases, p => p.phaseId === config.REGISTRATION_PHASE_ID)
172172
const submissionPhase = _.find(payload.phases, p => p.phaseId === config.SUBMISSION_PHASE_ID)
173173
const startDate = payload.startDate ? new Date(payload.startDate) : new Date()
174174
data.registrationStartsAt = startDate.toISOString()
175-
data.registrationEndsAt = new Date(startDate.getTime() + (registrationPhase || submissionPhase).duration).toISOString()
176-
data.registrationDuration = (registrationPhase || submissionPhase).duration
177-
data.submissionEndsAt = new Date(startDate.getTime() + submissionPhase.duration).toISOString()
178-
data.submissionDuration = submissionPhase.duration
175+
data.registrationEndsAt = new Date(startDate.getTime() + (registrationPhase || submissionPhase).duration * SECONDS_TO_MILLIS).toISOString()
176+
data.registrationDuration = (registrationPhase || submissionPhase).duration * SECONDS_TO_MILLIS
177+
data.submissionEndsAt = new Date(startDate.getTime() + submissionPhase.duration * SECONDS_TO_MILLIS).toISOString()
178+
data.submissionDuration = submissionPhase.duration * SECONDS_TO_MILLIS
179179

180180
// Only Design can have checkpoint phase and checkpoint prizes
181181
const checkpointPhase = _.find(payload.phases, p => p.phaseId === config.CHECKPOINT_SUBMISSION_PHASE_ID)
182182
if (checkpointPhase) {
183183
data.checkpointSubmissionStartsAt = startDate.toISOString()
184-
data.checkpointSubmissionEndsAt = new Date(startDate.getTime() + checkpointPhase.duration).toISOString()
185-
data.checkpointSubmissionDuration = checkpointPhase.duration
184+
data.checkpointSubmissionEndsAt = new Date(startDate.getTime() + checkpointPhase.duration * SECONDS_TO_MILLIS).toISOString()
185+
data.checkpointSubmissionDuration = checkpointPhase.duration * SECONDS_TO_MILLIS
186186
} else {
187187
data.checkpointSubmissionStartsAt = null
188188
data.checkpointSubmissionEndsAt = null

0 commit comments

Comments
 (0)