MDL-72553 qbank_customfields: Add custom fields for question types
commit556e2f1aec554b816bf621826c8b52d3c70fb70e
authorMatt Porritt <mattp@catalyst-au.net>
Tue, 14 Sep 2021 03:01:32 +0000 (14 03:01 +0000)
committerSafat Shahin <safatshahin@catalyst-au.net>
Tue, 7 Dec 2021 07:32:41 +0000 (7 18:32 +1100)
treec02b17511c394180404ca020de8d7687692fca40
parent51149a78cc0430ca538ba7f1bfdf381a9616ade4
MDL-72553 qbank_customfields: Add custom fields for question types

Custom fields can now be added to question types.
Site administrators can configure the custom fields and
filed types available. Teachers and question creators can
then use these fields for extra question metadata when
creating questions. Question creators can control if
the fields are displayed to students when they are
taking a quiz or not.
This features uses the core Moodle custom field API.

Co-Authored-By: Matt Porritt <mattp@catalyst-au.net>
Co-Authored-By: Safat Shahin <safatshahin@catalyst-au.net>
Co-Authored-By: Marc-Alexandre Ghaly <marc-alexandreghaly@catalyst-ca.net>
34 files changed:
lib/classes/plugin_manager.php
lib/classes/plugininfo/qbank.php
lib/questionlib.php
mod/quiz/classes/question/bank/custom_view.php
mod/quiz/tests/behat/editing_add.feature
mod/quiz/tests/behat/editing_add_from_question_bank.feature
question/bank/customfields/backup/moodle2/backup_qbank_customfields_plugin.class.php [new file with mode: 0644]
question/bank/customfields/backup/moodle2/restore_qbank_customfields_plugin.class.php [new file with mode: 0644]
question/bank/customfields/classes/custom_field_column.php [new file with mode: 0644]
question/bank/customfields/classes/customfield/question_handler.php [new file with mode: 0644]
question/bank/customfields/classes/output/renderer.php [new file with mode: 0644]
question/bank/customfields/classes/plugin_feature.php [new file with mode: 0644]
question/bank/customfields/classes/privacy/provider.php [new file with mode: 0644]
question/bank/customfields/customfield.php [new file with mode: 0644]
question/bank/customfields/db/access.php [new file with mode: 0644]
question/bank/customfields/lang/en/qbank_customfields.php [new file with mode: 0644]
question/bank/customfields/lib.php [new file with mode: 0644]
question/bank/customfields/settings.php [new file with mode: 0644]
question/bank/customfields/templates/preview_display.mustache [new file with mode: 0644]
question/bank/customfields/templates/table_display.mustache [new file with mode: 0644]
question/bank/customfields/tests/behat/customfield_question.feature [new file with mode: 0644]
question/bank/customfields/tests/behat/customfield_question_setup.feature [new file with mode: 0644]
question/bank/customfields/tests/behat/customfield_question_visbility.feature [new file with mode: 0644]
question/bank/customfields/tests/customfield_test.php [new file with mode: 0644]
question/bank/customfields/tests/question_handler_test.php [new file with mode: 0644]
question/bank/customfields/version.php [new file with mode: 0644]
question/bank/editquestion/question.php
question/bank/viewquestionname/classes/viewquestionname_column_helper.php
question/classes/local/bank/column_base.php
question/classes/local/bank/view.php
question/tests/behat/sort_questions.feature
question/type/edit_question_form.php
question/type/questionbase.php
question/type/questiontypebase.php