Skip to content

Commit deddab3

Browse files
authored
Merge pull request #599 from topcoder-platform/fix/startdate
update startdate/endate calculation
2 parents 3b60f5f + 155538b commit deddab3

File tree

1 file changed

+14
-5
lines changed

1 file changed

+14
-5
lines changed

src/services/ChallengeService.js

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1724,7 +1724,12 @@ async function updateChallenge(currentUser, challengeId, data) {
17241724
}
17251725
}
17261726

1727-
if (data.phases || data.startDate || timelineTemplateChanged) {
1727+
let phasesUpdated = false;
1728+
if (
1729+
(data.phases && data.phases.length > 0) ||
1730+
isChallengeBeingActivated ||
1731+
timelineTemplateChanged
1732+
) {
17281733
if (
17291734
challenge.status === constants.challengeStatuses.Completed ||
17301735
challenge.status.indexOf(constants.challengeStatuses.Cancelled) > -1
@@ -1741,18 +1746,22 @@ async function updateChallenge(currentUser, challengeId, data) {
17411746
newStartDate,
17421747
finalTimelineTemplateId
17431748
);
1744-
} else if (data.startDate || (data.phases && data.phases.length > 0)) {
1749+
} else {
17451750
newPhases = await phaseHelper.populatePhasesForChallengeUpdate(
17461751
challenge.phases,
17471752
data.phases,
17481753
challenge.timelineTemplateId,
17491754
isChallengeBeingActivated
17501755
);
17511756
}
1752-
1757+
phasesUpdated = true;
17531758
data.phases = newPhases;
1754-
data.startDate = convertToISOString(newStartDate);
1755-
data.endDate = helper.calculateChallengeEndDate(challenge, data);
1759+
}
1760+
if (phasesUpdated || data.startDate) {
1761+
data.startDate = convertToISOString(data.phases[0].scheduledStartDate);
1762+
}
1763+
if (phasesUpdated || data.endDate) {
1764+
data.endDate = convertToISOString(data.phases[data.phases.length - 1].scheduledEndDate);
17561765
}
17571766

17581767
if (data.winners && data.winners.length && data.winners.length > 0) {

0 commit comments

Comments
 (0)