From 0a5ca2390097db2042ed3e2d87b02e6d79d6ca36 Mon Sep 17 00:00:00 2001 From: "Luiz R. Rodrigues" Date: Wed, 17 Jun 2020 07:14:25 -0300 Subject: [PATCH 1/2] Challenge Details - Fix submissions with V5 API --- .../challenge-detail/Registrants/index.jsx | 4 +- .../challenge-detail/Submissions/index.jsx | 40 ++++++++++++------- .../containers/challenge-detail/index.jsx | 8 ++-- 3 files changed, 31 insertions(+), 21 deletions(-) diff --git a/src/shared/components/challenge-detail/Registrants/index.jsx b/src/shared/components/challenge-detail/Registrants/index.jsx index ab86087288..8ace3e904d 100644 --- a/src/shared/components/challenge-detail/Registrants/index.jsx +++ b/src/shared/components/challenge-detail/Registrants/index.jsx @@ -20,14 +20,14 @@ function formatDate(date) { } function getDate(arr, handle) { - const results = arr.filter(a => _.toString(a.submitter || a.memberHandle) === _.toString(handle)) + const results = arr.filter(a => _.toString(a.createdBy || a.memberHandle) === _.toString(handle)) .sort((a, b) => new Date(b.submissionTime || b.submissionDate).getTime() - new Date(a.submissionTime || a.submissionDate).getTime()); return results[0] ? (results[0].submissionTime || results[0].submissionDate) : ''; } function passedCheckpoint(checkpoints, handle, results) { - const mine = checkpoints.filter(c => _.toString(c.submitter) === _.toString(handle)); + const mine = checkpoints.filter(c => _.toString(c.createdBy) === _.toString(handle)); return _.some(mine, m => _.find(results, r => r.submissionId === m.submissionId)); } diff --git a/src/shared/components/challenge-detail/Submissions/index.jsx b/src/shared/components/challenge-detail/Submissions/index.jsx index e6a847e5dd..0d0ad48eb3 100644 --- a/src/shared/components/challenge-detail/Submissions/index.jsx +++ b/src/shared/components/challenge-detail/Submissions/index.jsx @@ -150,7 +150,9 @@ class SubmissionsComponent extends React.Component { const { field, sort } = this.getSubmissionsSortParam(isMM, isReviewPhaseComplete); let isHaveFinalScore = false; if (field === 'Initial / Final Score') { - isHaveFinalScore = _.some(submissions, s => !_.isNil(s.submissions[0].finalScore)); + isHaveFinalScore = _.some(submissions, s => !_.isNil( + s.reviewSummation && s.reviewSummation[0].aggregateScore, + )); } return sortList(submissions, field, sort, (a, b) => { let valueA = 0; @@ -173,16 +175,16 @@ class SubmissionsComponent extends React.Component { valueA = `${a.member || ''}`.toLowerCase(); valueB = `${b.member || ''}`.toLowerCase(); } else { - valueA = `${a.submitter}`.toLowerCase(); - valueB = `${b.submitter}`.toLowerCase(); + valueA = `${a.createdBy}`.toLowerCase(); + valueB = `${b.createdBy}`.toLowerCase(); } valueIsString = true; break; } case 'Time': case 'Submission Date': { - valueA = new Date(a.submissions && a.submissions[0].submissionTime); - valueB = new Date(b.submissions && b.submissions[0].submissionTime); + valueA = new Date(a.created); + valueB = new Date(b.created); break; } case 'Initial / Final Score': { @@ -190,8 +192,8 @@ class SubmissionsComponent extends React.Component { valueA = getFinalScore(a); valueB = getFinalScore(b); } else { - valueA = a.submissions[0].initialScore; - valueB = b.submissions[0].initialScore; + valueA = !_.isEmpty(a.review) && a.review[0].score; + valueB = !_.isEmpty(b.review) && b.review[0].score; } break; } @@ -311,12 +313,12 @@ class SubmissionsComponent extends React.Component { {`#${s.submissionId}`} - {s.submitter} + {s.createdBy}
@@ -702,7 +704,7 @@ class SubmissionsComponent extends React.Component { { !isMM && ( sortedSubmissions.map(s => ( -
+
{ !isF2F && !isBugHunt && (
@@ -712,24 +714,32 @@ class SubmissionsComponent extends React.Component { }
- {moment(s.submissions[0].submissionTime).format('MMM DD, YYYY HH:mm')} + {moment(s.created).format('MMM DD, YYYY HH:mm')}
- {s.submissions[0].initialScore ? s.submissions[0].initialScore.toFixed(2) : 'N/A'} + { + (!_.isEmpty(s.review) && s.review[0].score) + ? s.review[0].score.toFixed(2) + : 'N/A' + } ‌ ‌/ ‌ - {s.submissions[0].finalScore ? s.submissions[0].finalScore.toFixed(2) : 'N/A'} + { + (s.reviewSummation && s.reviewSummation[0].aggregateScore) + ? s.reviewSummation[0].aggregateScore.toFixed(2) + : 'N/A' + }
)) diff --git a/src/shared/containers/challenge-detail/index.jsx b/src/shared/containers/challenge-detail/index.jsx index 841356d201..e06a7a3ff5 100644 --- a/src/shared/containers/challenge-detail/index.jsx +++ b/src/shared/containers/challenge-detail/index.jsx @@ -720,7 +720,7 @@ function mapStateToProps(state, props) { if (challenge.submissions) { challenge.submissions = challenge.submissions.map(submission => ({ ...submission, - registrant: _.find(challenge.registrants, { handle: submission.submitter }), + registrant: _.find(challenge.registrants, { memberHandle: submission.createdBy }), })); } @@ -736,14 +736,14 @@ function mapStateToProps(state, props) { return mySubmission; }); } - let submissionDetail = _.find(challenge.submissions, { submitter: submission.member }); + let submissionDetail = _.find(challenge.submissions, { createdBy: submission.createdBy }); if (!submissionDetail) { // get submission detail from submissions challenge detail - submissionDetail = _.find(challenge.submissions, s => (`${s.submitterId}` === `${submission.member}`)); + submissionDetail = _.find(challenge.submissions, s => (`${s.memberId}` === `${submission.memberId}`)); } if (submissionDetail) { - member = submissionDetail.submitter; + member = submissionDetail.createdBy; ({ registrant } = submissionDetail); } From 6987e6c92fa1d45e94d5a980ac97cb871a5970ff Mon Sep 17 00:00:00 2001 From: "Luiz R. Rodrigues" Date: Wed, 17 Jun 2020 07:14:36 -0300 Subject: [PATCH 2/2] Challenge Details - Fix arrow icon --- src/assets/images/arrow-down.svg | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/assets/images/arrow-down.svg b/src/assets/images/arrow-down.svg index 1702e8c59d..d53eedd1a0 100644 --- a/src/assets/images/arrow-down.svg +++ b/src/assets/images/arrow-down.svg @@ -3,14 +3,11 @@ 5D558F9B-43EB-41DF-905D-8862EFEE8959 Created with sketchtool. - - - - +