Search moodle.org's
Developer Documentation

See Release Notes
Long Term Support Release

  • Bug fixes for general core bugs in 3.9.x will end* 10 May 2021 (12 months).
  • Bug fixes for security issues in 3.9.x will end* 8 May 2023 (36 months).
  • PHP version: minimum PHP 7.2.0 Note: minimum PHP version has increased since Moodle 3.8. PHP 7.3.x and 7.4.x are supported too.

Differences Between: [Versions 39 and 310] [Versions 39 and 311] [Versions 39 and 400] [Versions 39 and 401] [Versions 39 and 402] [Versions 39 and 403]

Multiple choice question definition classes.

Copyright: 2009 The Open University
License: http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
File Size: 509 lines (18 kb)
Included or required:0 times
Referenced: 2 times
Includes or requires: 0 files

Defines 3 classes


Class: qtype_multichoice_base  - X-Ref

Base class for multiple choice questions. The parts that are common to
single select and multiple select.

start_attempt(question_attempt_step $step, $variant)   X-Ref


apply_attempt_state(question_attempt_step $step)   X-Ref
No description

get_question_summary()   X-Ref
No description

get_order(question_attempt $qa)   X-Ref
No description

init_order(question_attempt $qa)   X-Ref
No description

check_file_access($qa, $options, $component, $filearea, $args, $forcedownload)   X-Ref
No description

Class: qtype_multichoice_single_question  - X-Ref

Represents a multiple choice question where only one choice should be selected.

get_renderer(moodle_page $page)   X-Ref
No description

get_min_fraction()   X-Ref
No description

get_expected_data()   X-Ref
Return an array of the question type variables that could be submitted
as part of a question of this type, with their types, so they can be
properly cleaned.

return: array variable name => PARAM_... constant.

summarise_response(array $response)   X-Ref
No description

classify_response(array $response)   X-Ref
No description

get_correct_response()   X-Ref
No description

prepare_simulated_post_data($simulatedresponse)   X-Ref
No description

get_student_response_values_for_simulation($postdata)   X-Ref
No description

is_same_response(array $prevresponse, array $newresponse)   X-Ref
No description

is_complete_response(array $response)   X-Ref
No description

is_gradable_response(array $response)   X-Ref
No description

grade_response(array $response)   X-Ref
No description

get_validation_error(array $response)   X-Ref
No description

get_response(question_attempt $qa)   X-Ref
No description

is_choice_selected($response, $value)   X-Ref
No description

Class: qtype_multichoice_multi_question  - X-Ref

Represents a multiple choice question where multiple choices can be selected.

get_renderer(moodle_page $page)   X-Ref
No description

get_min_fraction()   X-Ref
No description

clear_wrong_from_response(array $response)   X-Ref
No description

get_num_parts_right(array $response)   X-Ref
No description

field($key)   X-Ref

param: int $key choice number
return: string the question-type variable name.

get_expected_data()   X-Ref
No description

summarise_response(array $response)   X-Ref
No description

classify_response(array $response)   X-Ref
No description

get_correct_response()   X-Ref
No description

prepare_simulated_post_data($simulatedresponse)   X-Ref
No description

get_student_response_values_for_simulation($postdata)   X-Ref
No description

is_same_response(array $prevresponse, array $newresponse)   X-Ref
No description

is_complete_response(array $response)   X-Ref
No description

is_gradable_response(array $response)   X-Ref
No description

get_num_selected_choices(array $response)   X-Ref

param: array $response responses, as returned by
return: int the number of choices that were selected. in this response.

get_num_correct_choices()   X-Ref

return: int the number of choices that are correct.

grade_response(array $response)   X-Ref
No description

get_validation_error(array $response)   X-Ref
No description

disable_hint_settings_when_too_many_selected(question_hint_with_parts $hint)   X-Ref
Disable those hint settings that we don't want when the student has selected
more choices than the number of right choices. This avoids giving the game away.

param: question_hint_with_parts $hint a hint.

get_hint($hintnumber, question_attempt $qa)   X-Ref
No description

get_response(question_attempt $qa)   X-Ref
No description

is_choice_selected($response, $value)   X-Ref
No description