Since PHP 8.2, all properties on a class must be defined as the PHP
Dynamic Property feature has been deprecated.
This commit goes one step further and switches this class to using
constructor property promotion. This language feature has been available
since PHP 8.0 and allows for simplified creation of class properties
which are initially defined in the constructor.
The tertiary navigation has been added to the question bank.
- Url selector has been added for the pages:
Questions, Categories, Import and Export
- A separate page to "Add category" has been added.
The "Add category" is available as a tertiary nav button.
- Updated the tests for the changes made.
This commit is mostly Sujith's work, with further changes by
Tim Hunt <T.J.Hunt@open.ac.uk> so we share the blame/credit.
AMOS BEGIN
CPY [questioncats,mod_quiz],[questioncategories,core_question]
AMOS END
Alterations here allowed the removal of renderables, and mustache
templates for quiz report navigation. The questionbank was also
updated to show injected navigation nodes from third party plugins.
This implementation will introduct changes to
the mod_quiz to implement the new qbank api
for view. Major changes are introduced in
the custom view and also all the legacy points
to the old qbank are changed to qbank plugins
where needed. It also deprecated and deletes
classes and scripts which were kept not to
break mod_quiz for the new api implementation.
This implementation will introduce a qbank plugin "editquestion"
which will implement the edit question, add question and copy
question actions in the question bank view by replacing the
core classes. Having this plugin will give users the
flexibility of enabling or disabling these actions.