diff --git a/src/components/ChallengeEditor/index.js b/src/components/ChallengeEditor/index.js index 7aeab5e1..c81e9bd4 100644 --- a/src/components/ChallengeEditor/index.js +++ b/src/components/ChallengeEditor/index.js @@ -1242,7 +1242,14 @@ class ChallengeEditor extends Component { */ isPhaseEditable (phaseIndex) { const { phases } = this.state.challenge - return moment(phases[phaseIndex].scheduledEndDate).isAfter(moment()) + const phase = phases[phaseIndex] + if (phase.name === 'Registration' && moment(phase.scheduledEndDate).isAfter(moment())) { + return true + } + if (!phase.isOpen) { + return false + } + return moment(phase.scheduledEndDate).isAfter(moment()) } render () { diff --git a/src/components/DurationInput/index.js b/src/components/DurationInput/index.js index ca5d9e63..0ce34f99 100644 --- a/src/components/DurationInput/index.js +++ b/src/components/DurationInput/index.js @@ -15,7 +15,10 @@ const DurationInput = ({ duration, onDurationChange, index, isActive }) => { min={0} type='number' value={Number(duration).toString()} - onChange={e => onDurationChange(e.target.value)} + onChange={e => { + e.preventDefault() + onDurationChange(e.target.value) + }} autoFocus={inputRef.current === document.activeElement} disabled={!isActive} /> diff --git a/src/util/date.js b/src/util/date.js index cf5d5205..b0bad1ad 100644 --- a/src/util/date.js +++ b/src/util/date.js @@ -110,11 +110,13 @@ export const updateChallengePhaseBeforeSendRequest = (challengeDetail) => { if (challengeDetail.phases) { const challengeDetailTmp = _.cloneDeep(challengeDetail) challengeDetailTmp.startDate = challengeDetail.phases[0].scheduledStartDate + // challengeDetailTmp.registrationStartDate = moment(challengeDetail.phases[0].scheduledStartDate) + // challengeDetailTmp.registrationEndDate = moment(challengeDetail.phases[0].scheduledEndDate) + // challengeDetailTmp.submissionStartDate = moment(challengeDetail.phases[1].scheduledStartDate) + // challengeDetailTmp.submissionEndDate = moment(challengeDetail.phases[1].scheduledEndDate) challengeDetailTmp.phases = challengeDetailTmp.phases.map((p) => ({ duration: p.duration * hourToSecond, - phaseId: p.phaseId, - scheduledStartDate: p.scheduledStartDate, - scheduledEndDate: p.scheduledEndDate + phaseId: p.phaseId })) return challengeDetailTmp }