Skip to content

Commit c4104f0

Browse files
authored
Merge pull request #266 from chqy24/issue_207
fixes #207
2 parents 051a4d5 + bbd06b3 commit c4104f0

File tree

3 files changed

+35
-21
lines changed

3 files changed

+35
-21
lines changed

src/shared/components/challenge-detail/Header/DeadlineCards.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ export default function DeadlineCards(props) {
4242
dateStyle = 'deadline-live';
4343
}
4444
return (
45-
<div key={deadlineKey} styleName="deadline-card">
45+
<div key={phase.id} styleName="deadline-card">
4646
<p styleName="deadline-info">{deadlineKey}</p>
4747
<p styleName={`deadline-date ${dateStyle}`}>
4848
{

src/shared/components/challenge-detail/Header/index.jsx

Lines changed: 30 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ export default function ChallengeHeader(props) {
7979
} else if (reliabilityBonus) {
8080
bonusType = 'Reliability Bonus';
8181
}
82-
const registrationEnded = new Date(registrationEndDate).getTime() < Date.now();
82+
const registrationEnded = new Date(registrationEndDate).getTime() < Date.now() || status.toLowerCase() !== 'active';
8383
const submissionEnded = new Date(submissionEndDate).getTime() < Date.now();
8484
const hasSubmissions = userDetails && userDetails.hasUserSubmittedForReview;
8585
const nextDeadline = currentPhases && currentPhases.length > 0 && currentPhases[0].phaseType;
@@ -114,15 +114,25 @@ export default function ChallengeHeader(props) {
114114
return (new Date(a.actualEndTime || a.scheduledEndTime)).getTime() -
115115
(new Date(b.actualEndTime || b.scheduledEndTime)).getTime();
116116
});
117-
118-
if (relevantPhases.length > 1 && appealsEndDate) {
117+
if (subTrack === 'FIRST_2_FINISH' && status === 'COMPLETED') {
118+
const phases = allPhases.filter(p => p.phaseType === 'Iterative Review' && p.phaseStatus === 'Closed');
119+
const endPhaseDate = Math.max(...phases.map(d => new Date(d.scheduledEndTime)));
120+
relevantPhases = _.filter(relevantPhases, p => (p.phaseType.toLowerCase().includes('registration') ||
121+
new Date(p.scheduledEndTime).getTime() < endPhaseDate));
122+
relevantPhases.push({
123+
id: -1,
124+
phaseType: 'Winners',
125+
scheduledEndTime: endPhaseDate,
126+
});
127+
} else if (relevantPhases.length > 1 && appealsEndDate) {
119128
const lastPhase = relevantPhases[relevantPhases.length - 1];
120129
const lastPhaseTime = (
121130
new Date(lastPhase.actualEndTime || lastPhase.scheduledEndTime)
122131
).getTime();
123132
const appealsEnd = (new Date(appealsEndDate).getTime());
124133
if (lastPhaseTime < appealsEnd) {
125134
relevantPhases.push({
135+
id: -1,
126136
phaseType: 'Winners',
127137
scheduledEndTime: appealsEndDate,
128138
});
@@ -202,14 +212,23 @@ export default function ChallengeHeader(props) {
202212
<div styleName="deadlines-view">
203213
<div styleName="deadlines-overview">
204214
<div styleName="deadlines-overview-text">
205-
<div styleName="next-deadline">
206-
Next Deadline: <span styleName="deadline-highlighted">{nextDeadline || '-'}</span>
207-
</div>
208-
<div styleName="current-phase">
209-
<span styleName="deadline-highlighted">
210-
{timeLeft}
211-
</span> until current deadline ends
212-
</div>
215+
{
216+
(status || '').toLowerCase() === 'active' ?
217+
(<div styleName="next-deadline">
218+
Next Deadline: <span styleName="deadline-highlighted">{nextDeadline || '-'}</span>
219+
</div>) :
220+
(<div>
221+
Status: <span styleName="deadline-highlighted">{_.capitalize(status)}</span>
222+
</div>)
223+
}
224+
{
225+
(status || '').toLowerCase() === 'active' &&
226+
<div styleName="current-phase">
227+
<span styleName="deadline-highlighted">
228+
{timeLeft}
229+
</span> until current deadline ends
230+
</div>
231+
}
213232
</div>
214233
<a onClick={props.onToggleDeadlines} styleName="deadlines-collapser">
215234
{props.showDeadlineDetail ?

src/shared/components/challenge-detail/Header/style.scss

Lines changed: 4 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -295,21 +295,16 @@
295295
word-wrap: normal;
296296
border-right: $tc-gray-50 solid 1px;
297297
padding-right: 10px;
298-
299-
.deadline-highlighted {
300-
color: $tc-white;
301-
font-weight: 700;
302-
}
303298
}
304299

305300
.current-phase {
306301
overflow-wrap: normal;
307302
padding-left: 10px;
303+
}
308304

309-
.deadline-highlighted {
310-
color: $tc-white;
311-
font-weight: 700;
312-
}
305+
.deadline-highlighted {
306+
color: $tc-white;
307+
font-weight: 700;
313308
}
314309
}
315310

0 commit comments

Comments
 (0)