Moodle  2.2.1
http://www.collinsharper.com
qtype_numerical_question Class Reference
Inheritance diagram for qtype_numerical_question:
Collaboration diagram for qtype_numerical_question:

Public Member Functions

 get_expected_data ()
 has_separate_unit_field ()
 start_attempt (question_attempt_step $step, $variant)
 apply_attempt_state (question_attempt_step $step)
 summarise_response (array $response)
 is_gradable_response (array $response)
 is_complete_response (array $response)
 get_validation_error (array $response)
 is_same_response (array $prevresponse, array $newresponse)
 get_correct_response ()
 get_matching_answer ($value, $multiplier)
 get_correct_answer ()
 apply_unit_penalty ($fraction, $unitisright)
 grade_response (array $response)
 classify_response (array $response)
 check_file_access ($qa, $options, $component, $filearea, $args, $forcedownload)

Data Fields

 $answers = array()
 $unitdisplay
 $unitgradingtype
 $unitpenalty
 $ap

Detailed Description

Represents a numerical question.

Definition at line 38 of file question.php.


Member Function Documentation

When an in-progress question_attempt is re-loaded from the database, this method is called so that the question can re-initialise its internal state as needed by this attempt.

For example, the multiple choice question type needs to set the order of the choices to the order that was set up when start_attempt was called originally. All the information required to do this should be in the $step object, which is the first step of the question_attempt being loaded.

Parameters:
question_attempt_stepThe first step of the question_attempt being loaded.

Reimplemented from question_definition.

Reimplemented in qtype_calculated_question.

Definition at line 70 of file question.php.

Here is the call graph for this function:

apply_unit_penalty ( fraction,
unitisright 
)

Adjust the fraction based on whether the unit was correct.

Parameters:
number$fraction
bool$unitisright
Returns:
number

Definition at line 218 of file question.php.

Here is the caller graph for this function:

check_file_access ( qa,
options,
component,
filearea,
args,
forcedownload 
)

Checks whether the users is allow to be served a particular file.

Parameters:
question_attempt$qathe question attempt being displayed.
question_display_options$optionsthe options that control display of the question.
string$componentthe name of the component we are serving files for.
string$fileareathe name of the file area.
array$argsthe remaining bits of the file path.
bool$forcedownloadwhether the user must be forced to download the file.
Returns:
bool true if the user can access this file.

Reimplemented from question_definition.

Definition at line 276 of file question.php.

Here is the call graph for this function:

classify_response ( array response)

Categorise the student's response according to the categories defined by get_possible_responses.

Parameters:
$responsea response, as might be passed to grade_response().
Returns:
array subpartid => question_classified_response objects. returns an empty array if no analysis is possible.

Reimplemented from question_with_responses.

Definition at line 249 of file question.php.

Here is the call graph for this function:

Definition at line 202 of file question.php.

Here is the call graph for this function:

Here is the caller graph for this function:

What data would need to be submitted to get this question correct. If there is more than one correct answer, this method should just return one possibility. If it is not possible to compute a correct response, this method should return null.

Returns:
array|null parameter name => value.

Reimplemented from question_definition.

Definition at line 159 of file question.php.

Here is the call graph for this function:

What data may be included in the form submission when a student submits this question in its current state?

This information is used in calls to optional_param. The parameter name has question_attempt::get_field_prefix() automatically prepended.

Returns:
array|string variable name => PARAM_... constant, or, as a special case that should only be used in unavoidable, the constant question_attempt::USE_RAW_DATA meaning take all the raw submitted data belonging to this question.

Reimplemented from question_definition.

Definition at line 52 of file question.php.

Here is the call graph for this function:

get_matching_answer ( value,
multiplier 
)

Get an answer that contains the feedback and fraction that should be awarded for this resonse.

Parameters:
number$valuethe numerical value of a response.
number$multiplierfor the unit the student gave, if any. When no unit was given, or an unrecognised unit was given, $multiplier will be null.
Returns:
question_answer the matching answer.

Definition at line 184 of file question.php.

Here is the caller graph for this function:

get_validation_error ( array response)

In situations where is_gradable_response() returns false, this method should generate a description of what the problem is.

Returns:
string the message.

Implements question_automatically_gradable.

Definition at line 119 of file question.php.

Here is the call graph for this function:

grade_response ( array response)

Grade a response to the question, returning a fraction between get_min_fraction() and 1.0, and the corresponding question_state right, partial or wrong.

Parameters:
array$responseresponses, as returned by question_attempt_step::get_qt_data().
Returns:
array (number, integer) the fraction, and the state.

Implements question_automatically_gradable.

Definition at line 231 of file question.php.

Here is the call graph for this function:

Definition at line 60 of file question.php.

Here is the caller graph for this function:

is_complete_response ( array response)

Used by many of the behaviours, to work out whether the student's response to the question is complete. That is, whether the question attempt should move to the COMPLETE or INCOMPLETE state.

Parameters:
array$responseresponses, as returned by question_attempt_step::get_qt_data().
Returns:
bool whether this response is a complete answer to this question.

Implements question_manually_gradable.

Definition at line 94 of file question.php.

Here is the call graph for this function:

is_gradable_response ( array response)

Use by many of the behaviours to determine whether the student has provided enough of an answer for the question to be graded automatically, or whether it must be considered aborted.

Parameters:
array$responseresponses, as returned by question_attempt_step::get_qt_data().
Returns:
bool whether this response can be graded.

Reimplemented from question_graded_automatically.

Definition at line 89 of file question.php.

Here is the caller graph for this function:

is_same_response ( array prevresponse,
array newresponse 
)

Use by many of the behaviours to determine whether the student's response has changed. This is normally used to determine that a new set of responses can safely be discarded.

Parameters:
array$prevresponsethe responses previously recorded for this question, as returned by question_attempt_step::get_qt_data()
array$newresponsethe new responses, in the same format.
Returns:
bool whether the two sets of responses are the same - that is whether the new set of responses can safely be discarded.

Implements question_manually_gradable.

Definition at line 145 of file question.php.

Here is the call graph for this function:

start_attempt ( question_attempt_step step,
variant 
)

Start a new attempt at this question, storing any information that will be needed later in the step.

This is where the question can do any initialisation required on a per-attempt basis. For example, this is where the multiple choice question type randomly shuffles the choices (if that option is set).

Any information about how the question has been set up for this attempt should be stored in the $step, by calling $step->set_qt_var(...).

Parameters:
question_attempt_stepThe first step of the question_attempt being started. Can be used to store state.
int$varantwhich variant of this question to start. Will be between 1 and get_num_variants() inclusive.

Reimplemented from question_definition.

Reimplemented in qtype_calculated_question.

Definition at line 65 of file question.php.

Here is the call graph for this function:

summarise_response ( array response)

Produce a plain text summary of a response.

Parameters:
$responsea response, as might be passed to grade_response().
Returns:
string a plain text summary of that response, that could be used in reports.

Implements question_manually_gradable.

Definition at line 75 of file question.php.

Here is the call graph for this function:


Field Documentation

$answers = array()

Definition at line 40 of file question.php.

$ap

Definition at line 50 of file question.php.

$unitdisplay

Definition at line 43 of file question.php.

$unitgradingtype

Definition at line 45 of file question.php.

$unitpenalty

Definition at line 47 of file question.php.


The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Enumerations