Moodle APIs  3.8
Moodle 3.8.6 (Build: 20201109)
Public Member Functions | Protected Attributes | List of all members
question_behaviour_type_fallback Class Reference

This class exists to allow behaviours that worked in Moodle 2.3 to continue to work. More...

Inheritance diagram for question_behaviour_type_fallback:
question_behaviour_type

Public Member Functions

 __construct ($behaviour)
 
 adjust_random_guess_score ($fraction)
 Adjust a random guess score for a question using this model. More...
 
 allows_multiple_submitted_responses ()
 Does this question behaviour accept multiple submissions of responses within one attempt eg. More...
 
 can_questions_finish_during_the_attempt ()
 With this behaviour, is it possible that a question might finish as the student interacts with it, without a call to the question_attempt::finish() method? More...
 
 get_unused_display_options ()
 Override this method if there are some display options that do not make sense 'during the attempt'. More...
 
 is_archetypal ()
 Certain behaviours are definitive of a way that questions can behave when attempted. More...
 
 summarise_usage (question_usage_by_activity $quba, question_display_options $options)
 Get summary information about a queston usage. More...
 

Protected Attributes

string $behaviourclass
 the behaviour class name.
 

Detailed Description

This class exists to allow behaviours that worked in Moodle 2.3 to continue to work.

It implements the question_behaviour_type API for the other behaviour as much as possible in a backwards-compatible way.

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

Constructor & Destructor Documentation

◆ __construct()

question_behaviour_type_fallback::__construct (   $behaviour)
Parameters
string$behaviourtypethe type of behaviour we are providing a fallback for.

Member Function Documentation

◆ adjust_random_guess_score()

question_behaviour_type_fallback::adjust_random_guess_score (   $fraction)

Adjust a random guess score for a question using this model.

You have to do this without knowing details of the specific question, or which usage it is in.

Parameters
number$fractionthe random guess score from the question type.
Return values
numberthe adjusted fraction.

Reimplemented from question_behaviour_type.

◆ allows_multiple_submitted_responses()

question_behaviour_type::allows_multiple_submitted_responses ( )
inherited

Does this question behaviour accept multiple submissions of responses within one attempt eg.

multiple tries for the interactive or adaptive question behaviours.

Return values
bool

Reimplemented in qbehaviour_interactive_type, and qbehaviour_adaptive_type.

◆ can_questions_finish_during_the_attempt()

question_behaviour_type::can_questions_finish_during_the_attempt ( )
inherited

With this behaviour, is it possible that a question might finish as the student interacts with it, without a call to the question_attempt::finish() method?

Return values
boolwhether with this behaviour, questions may finish naturally.

Reimplemented in qbehaviour_interactive_type, qbehaviour_immediatefeedback_type, and qbehaviour_immediatecbm_type.

◆ get_unused_display_options()

question_behaviour_type_fallback::get_unused_display_options ( )

Override this method if there are some display options that do not make sense 'during the attempt'.

Return values
arrayof question_display_options field names, that are not relevant to this behaviour before a 'finish' action.

Reimplemented from question_behaviour_type.

◆ is_archetypal()

question_behaviour_type_fallback::is_archetypal ( )

Certain behaviours are definitive of a way that questions can behave when attempted.

For example deferredfeedback model, interactive model, etc. These are the options that should be listed in the user-interface, and for these behaviours this method should return true. Other behaviours are more implementation details, for example the informationitem behaviours, or a special subclass like interactive_adapted_for_my_qtype. These behaviours should return false.

Return values
boolwhether this is an archetypal behaviour.

Reimplemented from question_behaviour_type.

◆ summarise_usage()

question_behaviour_type::summarise_usage ( question_usage_by_activity  $quba,
question_display_options  $options 
)
inherited

Get summary information about a queston usage.

Behaviours are not obliged to do anything here, but this is an opportunity to provide additional information that can be displayed in places like at the top of the quiz review page.

In the return value, the array keys should be identifiers of the form qbehaviour_behaviourname_meaningfullkey. For qbehaviour_deferredcbm_highsummary. The values should be arrays with two items, title and content. Each of these should be either a string, or a renderable.

To understand how to implement this method, look at the CBM behaviours, and their unit tests.

Parameters
question_usage_by_activity$qubathe usage to provide summary data for.
Return values
arrayas described above.

Reimplemented in qbehaviour_deferredcbm_type.


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