Skip to content

Commit dc357cc

Browse files
authored
Merge pull request #4260 from akolson/quiz-incorrect-completion-value
Fixes incorrect value for Practice quiz
2 parents 2f0ac11 + dc4608f commit dc357cc

File tree

1 file changed

+13
-5
lines changed
  • contentcuration/contentcuration/frontend/channelEdit

1 file changed

+13
-5
lines changed

contentcuration/contentcuration/frontend/channelEdit/utils.js

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import { metadataStrings, constantStrings } from 'shared/mixins';
66
import {
77
AssessmentItemTypes,
88
CompletionCriteriaModels,
9+
ContentModalities,
910
SHORT_LONG_ACTIVITY_MIDPOINT,
1011
CompletionDropdownMap,
1112
} from 'shared/constants';
@@ -280,18 +281,20 @@ export function getCompletionDataFromNode(node) {
280281
return;
281282
}
282283

283-
const completionCriteria = node.extra_fields?.options?.completion_criteria
284-
? JSON.parse(JSON.stringify(node.extra_fields?.options?.completion_criteria))
285-
: null;
284+
const extraFields = node?.extra_fields || {};
285+
const options = extraFields?.options || {};
286+
const completionCriteria = options?.completion_criteria || null;
286287
const threshold = completionCriteria?.threshold || generateDefaultThreshold(node);
287288
const model = completionCriteria?.model || defaultCompletionCriteriaModels[node.kind];
288-
const suggestedDurationType = node.extra_fields?.suggested_duration_type;
289+
const modality = options?.modality || null;
290+
const suggestedDurationType = extraFields?.suggested_duration_type;
289291
const suggestedDuration = node.suggested_duration;
290292

291293
return {
292294
completionModel: model,
293295
completionThreshold: threshold,
294296
masteryModel: threshold?.mastery_model,
297+
modality,
295298
suggestedDurationType,
296299
suggestedDuration,
297300
};
@@ -323,11 +326,11 @@ export function getCompletionCriteriaLabels(node = {}, files = []) {
323326
if (!node && !files) {
324327
return;
325328
}
326-
327329
const {
328330
completionModel,
329331
completionThreshold,
330332
masteryModel,
333+
modality,
331334
suggestedDuration,
332335
} = getCompletionDataFromNode(node);
333336

@@ -374,6 +377,11 @@ export function getCompletionCriteriaLabels(node = {}, files = []) {
374377
m: completionThreshold.m,
375378
n: completionThreshold.n,
376379
});
380+
} else if (
381+
masteryModel === MasteryModelsNames.DO_ALL &&
382+
modality === ContentModalities.QUIZ
383+
) {
384+
labels.completion = metadataStrings.$tr('practiceQuiz');
377385
} else {
378386
labels.completion = constantStrings.$tr(masteryModel);
379387
}

0 commit comments

Comments
 (0)