Skip to content

Commit f4af623

Browse files
committed
Let's make sure the plagiarism callout is not displayed before all solutions are actually loaded.
1 parent 33fae7c commit f4af623

File tree

2 files changed

+53
-41
lines changed

2 files changed

+53
-41
lines changed

src/pages/AssignmentSolutions/AssignmentSolutions.js

Lines changed: 36 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -461,39 +461,46 @@ class AssignmentSolutions extends Component {
461461
linkFactory={links.GROUP_EDIT_URI_FACTORY}
462462
/>
463463

464-
{plagiarisms && plagiarisms.length > 0 ? (
465-
<Callout variant="danger" icon={<PlagiarismIcon />}>
466-
<FormattedMessage
467-
id="app.assignmentSolutions.plagiarismsDetected.authors"
468-
defaultMessage="There {count, plural, one {is} other {are}} {count} {count, plural, one {solution} other {solutions}} (from {authors} {authors, plural, one {author} other {unique authors}}) with detected similarities. Such solutions may be plagiarisms."
469-
values={{ count: plagiarisms.length, authors: getPlagiarismUniqueAuthors(plagiarisms).length }}
470-
/>
471-
{assignment.plagiarismCheckedAt && (
472-
<>
473-
<br />
464+
<FetchManyResourceRenderer fetchManyStatus={fetchManyStatus} loading={null} failed={null}>
465+
{() =>
466+
plagiarisms && plagiarisms.length > 0 ? (
467+
<Callout variant="danger" icon={<PlagiarismIcon />}>
474468
<FormattedMessage
475-
id="app.assignmentSolutions.plagiarismsDetected.time"
476-
defaultMessage="The latest plagiarism check ended at {date}."
469+
id="app.assignmentSolutions.plagiarismsDetected.authors"
470+
defaultMessage="There {count, plural, one {is} other {are}} {count} {count, plural, one {solution} other {solutions}} (from {authors} {authors, plural, one {author} other {unique authors}}) with detected similarities. Such solutions may be plagiarisms."
477471
values={{
478-
date: <DateTime unixts={assignment.plagiarismCheckedAt} compact />,
472+
count: plagiarisms.length,
473+
authors: getPlagiarismUniqueAuthors(plagiarisms).length,
479474
}}
480475
/>
481-
</>
482-
)}
483-
</Callout>
484-
) : (
485-
assignment.plagiarismCheckedAt && (
486-
<Callout variant="success" icon={<PlagiarismCheckedIcon />}>
487-
<FormattedMessage
488-
id="app.assignmentSolutions.plagiarismsChecked"
489-
defaultMessage="These assignment solutions were checked for plagiarisms at {date}. No similarities found."
490-
values={{
491-
date: <DateTime unixts={assignment.plagiarismCheckedAt} compact />,
492-
}}
493-
/>
494-
</Callout>
495-
)
496-
)}
476+
{assignment.plagiarismCheckedAt && (
477+
<>
478+
<br />
479+
<FormattedMessage
480+
id="app.assignmentSolutions.plagiarismsDetected.time"
481+
defaultMessage="The latest plagiarism check ended at {date}."
482+
values={{
483+
date: <DateTime unixts={assignment.plagiarismCheckedAt} compact />,
484+
}}
485+
/>
486+
</>
487+
)}
488+
</Callout>
489+
) : (
490+
assignment.plagiarismCheckedAt && (
491+
<Callout variant="success" icon={<PlagiarismCheckedIcon />}>
492+
<FormattedMessage
493+
id="app.assignmentSolutions.plagiarismsChecked"
494+
defaultMessage="These assignment solutions were checked for plagiarisms at {date}. No similarities found."
495+
values={{
496+
date: <DateTime unixts={assignment.plagiarismCheckedAt} compact />,
497+
}}
498+
/>
499+
</Callout>
500+
)
501+
)
502+
}
503+
</FetchManyResourceRenderer>
497504

498505
{pendingReviews && pendingReviews.length > 0 && !group.archived && (
499506
<Callout variant="warning">

src/pages/GroupUserSolutions/GroupUserSolutions.js

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -405,18 +405,23 @@ class GroupUserSolutions extends Component {
405405
linkFactory={links.GROUP_EDIT_URI_FACTORY}
406406
/>
407407

408-
{plagiarisms && plagiarisms.length > 0 && (
409-
<Callout variant="danger" icon={<PlagiarismIcon />}>
410-
<FormattedMessage
411-
id="app.assignmentSolutions.plagiarismsDetected.assignments"
412-
defaultMessage="There {count, plural, one {is} other {are}} {count} {count, plural, one {solution} other {solutions}} (of {assignments} {assignments, plural, one {assignment} other {assignments}}) with detected similarities. Such solutions may be plagiarisms."
413-
values={{
414-
count: plagiarisms.length,
415-
assignments: getPlagiarismUniqueAssignments(plagiarisms).length,
416-
}}
417-
/>
418-
</Callout>
419-
)}
408+
<FetchManyResourceRenderer fetchManyStatus={fetchSolutionsStatus} loading={null} failed={null}>
409+
{() =>
410+
plagiarisms &&
411+
plagiarisms.length > 0 && (
412+
<Callout variant="danger" icon={<PlagiarismIcon />}>
413+
<FormattedMessage
414+
id="app.assignmentSolutions.plagiarismsDetected.assignments"
415+
defaultMessage="There {count, plural, one {is} other {are}} {count} {count, plural, one {solution} other {solutions}} (of {assignments} {assignments, plural, one {assignment} other {assignments}}) with detected similarities. Such solutions may be plagiarisms."
416+
values={{
417+
count: plagiarisms.length,
418+
assignments: getPlagiarismUniqueAssignments(plagiarisms).length,
419+
}}
420+
/>
421+
</Callout>
422+
)
423+
}
424+
</FetchManyResourceRenderer>
420425

421426
{pendingReviews && pendingReviews.length > 0 && !group.archived && (
422427
<Callout variant="warning">

0 commit comments

Comments
 (0)