Skip to content

Commit be79371

Browse files
committed
Fixing reaload solver info after new submit (so the proper solutions count is displayed at solution detail page).
1 parent c2aa0ee commit be79371

File tree

1 file changed

+9
-4
lines changed

1 file changed

+9
-4
lines changed

src/pages/Solution/Solution.js

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import {
2727
fetchSolutionIfNeeded,
2828
fetchUsersSolutions,
2929
setNote,
30+
fetchAssignmentSolvers,
3031
fetchAssignmentSolversIfNeeded,
3132
} from '../../redux/modules/solutions.js';
3233
import { fetchAssignmentSolutionFilesIfNeeded } from '../../redux/modules/solutionFiles.js';
@@ -112,7 +113,7 @@ class Solution extends Component {
112113
submitting,
113114
canSubmit,
114115
initCanSubmit,
115-
reloadCanSubmit,
116+
reloadAfterSubmit,
116117
params: { assignmentId },
117118
evaluations,
118119
runtimeEnvironments,
@@ -209,7 +210,7 @@ class Solution extends Component {
209210
id={assignment.id}
210211
onSubmit={submitSolution}
211212
presubmitValidation={presubmitSolution}
212-
afterEvaluationStarts={reloadCanSubmit}
213+
afterEvaluationStarts={() => reloadAfterSubmit(currentUser.id)}
213214
onReset={initCanSubmit}
214215
isOpen={submitting}
215216
solutionFilesLimit={assignment.solutionFilesLimit}
@@ -341,7 +342,7 @@ Solution.propTypes = {
341342
refreshSolutionEvaluations: PropTypes.func.isRequired,
342343
download: PropTypes.func.isRequired,
343344
initCanSubmit: PropTypes.func.isRequired,
344-
reloadCanSubmit: PropTypes.func.isRequired,
345+
reloadAfterSubmit: PropTypes.func.isRequired,
345346
intl: PropTypes.object,
346347
links: PropTypes.object.isRequired,
347348
};
@@ -378,6 +379,10 @@ export default connect(
378379
),
379380
download: (id, entry = null) => dispatch(download(id, entry)),
380381
initCanSubmit: userId => () => dispatch(init(userId, params.assignmentId)),
381-
reloadCanSubmit: () => dispatch(canSubmit(params.assignmentId)),
382+
reloadAfterSubmit: userId =>
383+
Promise.all([
384+
dispatch(canSubmit(params.assignmentId)),
385+
dispatch(fetchAssignmentSolvers({ assignmentId: params.assignmentId, userId })),
386+
]),
382387
})
383388
)(injectIntl(withLinks(Solution)));

0 commit comments

Comments
 (0)