Moodle PHP Documentation 4.2
Moodle 4.2.8 (Build: 20240610) (2d41ac46f45)
mod_quiz\question\display_options Class Reference
Inheritance diagram for mod_quiz\question\display_options:
question_display_options

Public Member Functions

 add_question_identifier_to_label (string $label, bool $sridentifier=false, bool $addbefore=false)
 Helper to add the question identify (if there is one) to the label of an input field in a question.
 
 has_question_identifier ()
 Whether a question number has been provided for the question that is being displayed.
 
 hide_all_feedback ()
 Set all the feedback-related fields, feedback, numpartscorrect, generalfeedback, rightanswer, manualcomment} and correctness to {.
 

Static Public Member Functions

static get_dp_options ()
 Returns the valid choices for the number of decimal places for showing question marks.
 
static make_from_quiz (\stdClass $quiz, int $when)
 Set up the various options from the quiz settings, and a time constant.
 

Public Attributes

bool $attempt = true
 if this is false, then the student is not allowed to review anything about the attempt.
 
boolean $clearwrong = false
 whether the question type should output hidden form fields to reset any incorrect parts of the resonse to blank.
 
context $context
 the context the attempt being output belongs to.
 
int $correctness = self::VISIBLE
 Should the student have what they got right and wrong clearly indicated.
 
array $editquestionparams = array()
 If not empty, then a link to edit the question will be included in the info box for the question.
 
string $extrahistorycontent = ''
 
string $extrainfocontent = ''
 
int $feedback = self::VISIBLE
 Should the specific feedback be visible.
 
int $flags = self::VISIBLE
 Should the flag this question UI element be visible, and if so, should the flag state be changeable?
 
int $generalfeedback = self::VISIBLE
 Should the general feedback be visible?
 
int $history = self::HIDDEN
 Should the history of previous question states table be visible? {.
 
int $manualcomment = self::VISIBLE
 Should the manually added marker's comment be visible.
 
string $manualcommentlink = null
 Should we show a 'Make comment or override grade' link? base URL for the edit comment script, which will be shown if $manualcomment = self\VISIBLE.
 
int $markdp = 2
 of decimal places to use when formatting marks for output.
 
int $marks = self::MARK_AND_MAX
 The the mark and/or the maximum available mark for this question be visible? {.
 
int $numpartscorrect = self::VISIBLE
 For questions with a number of sub-parts (like matching, or multiple-choice, multiple-reponse) display the number of sub-parts that were correct.
 
int $overallfeedback = self::VISIBLE
 whether the attempt overall feedback is visible.
 
string $questionidentifier = null
 This identifier should be added to the labels of all input fields in the question.
 
moodle_url $questionreviewlink = null
 Used in places like the question history table, to show a link to review this question in a certain state.
 
boolean $readonly = false
 whether the question should be displayed as a read-only review, or in an active state where you can change the answer.
 
int $rightanswer = self::VISIBLE
 Should the automatically generated display of what the correct answer be visible?
 
int $userinfoinhistory = self::HIDDEN
 The option to show the action author in the response history.
 
int const AFTER_CLOSE = 0x00010
 as above, bit used to indicate 'after the quiz is closed'.
 
int const DURING = 0x10000
 The bitmask patterns use in the review option settings.
 
const EDITABLE = 2
 
const HIDDEN = 0
 
int const IMMEDIATELY_AFTER = 0x01000
 as above, bit used to indicate 'immediately after the attempt'.
 
int const LATER_WHILE_OPEN = 0x00100
 as above, bit used to indicate 'later while the quiz is still open'.
 
const MARK_AND_MAX = 2
 
int const MAX_DP = 7
 #-
 
int const MAX_ONLY = 1
 #-
 
int const SHOW_ALL = -1
 #+ named constants for the values that most of the options take.
 
const VISIBLE = 1
 

Static Protected Member Functions

static extract (int $setting, int $when, $whenset=self::VISIBLE, $whennotset=self::HIDDEN)
 Helper function to return one value or another depending on whether one bit is set.
 

Detailed Description

License
http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later

Member Function Documentation

◆ add_question_identifier_to_label()

question_display_options::add_question_identifier_to_label ( string $label,
bool $sridentifier = false,
bool $addbefore = false )
inherited

Helper to add the question identify (if there is one) to the label of an input field in a question.

Parameters
string$labelThe plain field label. E.g. 'Answer 1'
bool$sridentifierIf true, the question identifier, if added, will be wrapped in a sr-only span. Default false.
bool$addbeforeIf true, the question identifier will be added before the label.
Return values
stringThe amended label. For example 'Answer 1, Question 1'.

◆ extract()

static mod_quiz\question\display_options::extract ( int $setting,
int $when,
$whenset = self::VISIBLE,
$whennotset = self::HIDDEN )
staticprotected

Helper function to return one value or another depending on whether one bit is set.

Parameters
int$settingthe setting to unpack (e.g. $quiz->reviewmarks).
int$whenof the constants {
See also
DURING}, {
IMMEDIATELY_AFTER}, {
LATER_WHILE_OPEN} or {
AFTER_CLOSE}.
Parameters
bool | int$whensetvalue to return when the bit is set.
bool | int$whennotsetvalue to return when the bit is set.
Return values
bool|int\$whensetor $whennotset, depending.

◆ get_dp_options()

static question_display_options::get_dp_options ( )
staticinherited

Returns the valid choices for the number of decimal places for showing question marks.

For use in the user interface.

Calling code should probably use {

See also
question_engine\get_dp_options()} rather than calling this method directly.
Return values
arraysuitable for passing to {
See also
html_writer\select()} or similar.

◆ has_question_identifier()

question_display_options::has_question_identifier ( )
inherited

Whether a question number has been provided for the question that is being displayed.

Return values
bool

◆ hide_all_feedback()

question_display_options::hide_all_feedback ( )
inherited

Set all the feedback-related fields, feedback, numpartscorrect, generalfeedback, rightanswer, manualcomment} and correctness to {.

See also
question_display_options\HIDDEN}.

◆ make_from_quiz()

static mod_quiz\question\display_options::make_from_quiz ( \stdClass $quiz,
int $when )
static

Set up the various options from the quiz settings, and a time constant.

Parameters
stdClass$quizthe quiz settings from the database.
int$whenof the constants {
See also
DURING}, {
IMMEDIATELY_AFTER}, {
LATER_WHILE_OPEN} or {
AFTER_CLOSE}.
Return values
display_optionsinstance of this class set up appropriately.

Member Data Documentation

◆ $correctness

int question_display_options::$correctness = self::VISIBLE
inherited

Should the student have what they got right and wrong clearly indicated.

This includes the green/red hilighting of the bits of their response, whether the one-line summary of the current state of the question says correct/incorrect or just answered. {

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ $editquestionparams

array question_display_options::$editquestionparams = array()
inherited

If not empty, then a link to edit the question will be included in the info box for the question.

If used, this array must contain an element courseid or cmid.

It shoudl also contain a parameter returnurl => moodle_url giving a sensible URL to go back to when the editing form is submitted or cancelled.

url parameter for the edit link. id => questiosnid will be added automatically.

◆ $extrahistorycontent

string question_display_options::$extrahistorycontent = ''
inherited
Since
2.9 extra HTML to include in the history box of the question display, if it is shown.

◆ $extrainfocontent

string question_display_options::$extrainfocontent = ''
inherited
Since
2.9 extra HTML to include at the end of the outcome (feedback) box of the question display.

This field is now badly named. The place it included is was changed (for the better) but the name was left unchanged for backwards compatibility.

◆ $feedback

int question_display_options::$feedback = self::VISIBLE
inherited

Should the specific feedback be visible.

Specific feedback is typically the part of the feedback that changes based on the answer that the student gave. For example the feedback shown if a particular choice has been chosen in a multi-choice question. It also includes the combined feedback that a lost of question types have (e.g. feedback for any correct/incorrect response.)

{

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ $flags

int question_display_options::$flags = self::VISIBLE
inherited

Should the flag this question UI element be visible, and if so, should the flag state be changeable?

{

See also
question_display_options\HIDDEN}, {
question_display_options\VISIBLE} or {
question_display_options\EDITABLE}

◆ $generalfeedback

int question_display_options::$generalfeedback = self::VISIBLE
inherited

Should the general feedback be visible?

This is typically feedback shown to all students after the question is finished, irrespective of which answer they gave.

{

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ $history

int question_display_options::$history = self::HIDDEN
inherited

Should the history of previous question states table be visible? {.

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ $manualcomment

int question_display_options::$manualcomment = self::VISIBLE
inherited

Should the manually added marker's comment be visible.

Should the link for adding/editing the comment be there. {

See also
question_display_options\HIDDEN}, {
question_display_options\VISIBLE}, or {
question_display_options\EDITABLE}. Editable means that form fields are displayed inline.

◆ $marks

int question_display_options::$marks = self::MARK_AND_MAX
inherited

The the mark and/or the maximum available mark for this question be visible? {.

See also
question_display_options\HIDDEN}, {
question_display_options\MAX_ONLY} or {
question_display_options\MARK_AND_MAX}

◆ $numpartscorrect

int question_display_options::$numpartscorrect = self::VISIBLE
inherited

For questions with a number of sub-parts (like matching, or multiple-choice, multiple-reponse) display the number of sub-parts that were correct.

{

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ $questionidentifier

string question_display_options::$questionidentifier = null
inherited

This identifier should be added to the labels of all input fields in the question.

This is so people using assistive technology can easily tell which input belong to which question. The helper {

See also
self\add_question_identifier_to_label() makes this easier.

If not set before the question is rendered, then it defaults to 'Question N'. (lang string)

The identifier that the question being rendered is associated with. E.g. The question number when it is rendered on a quiz.

◆ $questionreviewlink

moodle_url question_display_options::$questionreviewlink = null
inherited

Used in places like the question history table, to show a link to review this question in a certain state.

If blank, a link is not shown. base URL for a review question script.

◆ $rightanswer

int question_display_options::$rightanswer = self::VISIBLE
inherited

Should the automatically generated display of what the correct answer be visible?

{

See also
question_display_options\HIDDEN} or {
question_display_options\VISIBLE}

◆ DURING

int const mod_quiz\question\display_options::DURING = 0x10000

The bitmask patterns use in the review option settings.

In the quiz settings, the review... (e.g. reviewmarks) values are bit patterns that allow what is visible to be change at different times. These constants define which bit is for which time.

bit used to indicate 'during the attempt'.

◆ MAX_DP

int const question_display_options::MAX_DP = 7
inherited

#-

maximum value for the {

See also
$markpd} option. This is effectively set by the database structure, which uses NUMBER(12,7) columns for question marks/fractions.

◆ MAX_ONLY

int const question_display_options::MAX_ONLY = 1
inherited

#-

#+ named constants for the {

See also
$marks} option.

The documentation for this class was generated from the following file: