diff --git a/src/addons/mod/quiz/services/quiz.ts b/src/addons/mod/quiz/services/quiz.ts index a80da3b48..b50123dbd 100644 --- a/src/addons/mod/quiz/services/quiz.ts +++ b/src/addons/mod/quiz/services/quiz.ts @@ -2105,6 +2105,7 @@ export type AddonModQuizGetAttemptSummaryWSParams = { */ export type AddonModQuizGetAttemptSummaryWSResponse = { questions: CoreQuestionQuestionWSData[]; + totalunanswered?: number; // @since 4.4. Total unanswered questions. warnings?: CoreWSExternalWarning[]; }; diff --git a/src/core/features/course/services/course.ts b/src/core/features/course/services/course.ts index 30ce7da75..f9122e912 100644 --- a/src/core/features/course/services/course.ts +++ b/src/core/features/course/services/course.ts @@ -1659,6 +1659,8 @@ export type CoreCourseCompletionActivityStatus = { description: string; // Completion description. }; }[]; + isoverallcomplete?: boolean; // @since 4.4. + // Whether the overall completion state of this course module should be marked as complete or not. offline?: boolean; // Whether the completions is offline and not yet synced. }; @@ -1840,6 +1842,8 @@ export type CoreCourseModuleWSCompletionData = { istrackeduser?: boolean; // @since 3.11. Whether completion is being tracked for this user. uservisible?: boolean; // @since 3.11. Whether this activity is visible to the user. details?: CoreCourseModuleWSRuleDetails[]; // @since 3.11. An array of completion details. + isoverallcomplete?: boolean; // @since 4.4. + // Whether the overall completion state of this course module should be marked as complete or not. }; /** diff --git a/src/core/features/question/services/question.ts b/src/core/features/question/services/question.ts index e65976006..54ab8e5f9 100644 --- a/src/core/features/question/services/question.ts +++ b/src/core/features/question/services/question.ts @@ -627,8 +627,9 @@ export type CoreQuestionQuestionWSData = { hasautosavedstep?: boolean; // Whether this question attempt has autosaved data. flagged: boolean; // Whether the question is flagged or not. questionnumber?: string; // @since 4.2. Question ordering number in the quiz. - state?: string; // The state where the question is in. It won't be returned if the user cannot see it. - status?: string; // Current formatted state of the question. + state?: string; // The state where the question is in terms of correctness. + // It will not be returned if the user cannot see it due to the quiz display correctness settings. + status?: string; // Human readable state of the question. stateclass?: // @since 4.4. A machine-readable class name for the state that this question attempt is in. typeof QUESTION_TODO_STATE_CLASSES[number] | typeof QUESTION_INVALID_STATE_CLASSES[number] | diff --git a/src/core/features/user/services/user.ts b/src/core/features/user/services/user.ts index e4734b160..000a5b0a1 100644 --- a/src/core/features/user/services/user.ts +++ b/src/core/features/user/services/user.ts @@ -1162,6 +1162,7 @@ type CoreEnrolSearchUsersWSParams = { searchanywhere: boolean; // Find a match anywhere, or only at the beginning. page: number; // Page number. perpage: number; // Number per page. + contextid?: number; // @since 4.4. Context ID. }; /**