Commit graph

251 commits

Author SHA1 Message Date
Tim Hunt
abeeaef10a MDL-76614 quiz: mod_quiz_view_object => mod_quiz\output\view_page 2023-01-06 14:35:49 +00:00
Tim Hunt
aceae3a4fa MDL-76614 quiz: move mod_quiz_links_to_other_attempts => classes\output 2023-01-06 14:35:49 +00:00
Tim Hunt
581a3bc7e9 MDL-76614 quiz: quiz_add_random_form => mod_quiz\form\add_random_form 2023-01-06 14:35:49 +00:00
Tim Hunt
dd41b972c0 MDL-76614 quiz: clean up edit_override_form class 2023-01-06 14:35:49 +00:00
Tim Hunt
8af8ef3b9f MDL-76614 quiz: clean up access_rule_base class 2023-01-06 14:35:48 +00:00
Tim Hunt
2ff112c688 MDL-76614 quiz: quiz_access_rule_base => mod_quiz\local\access_rule_base 2023-01-06 14:35:48 +00:00
Tim Hunt
dda9ba07f3 MDL-76614 quiz: quiz_override_form => mod_quiz\form\edit_override_form 2023-01-06 14:35:48 +00:00
Tim Hunt
f83181d397 MDL-76614 quiz: deprecate class moodle_quiz_exception
Code should just directly use moodle_execption.

Note, some of the existing uses (in web services) were passing a
literal message, not a language string identifier, but I decided
now was not the time to try to fix that.
2023-01-06 14:35:48 +00:00
Tim Hunt
f6ae83f40e MDL-76614 quiz: clean up update_overdue_attempts class 2023-01-06 14:35:48 +00:00
Tim Hunt
4ae4d8d1b6 MDL-76614 quiz: merge mod_quiz_overdue_attempt_updater into task
The only place this code was used was in
mod_quiz\task\update_overdue_attempts so neater to combine them into one
class.
2023-01-06 14:35:48 +00:00
Tim Hunt
91c913debc MDL-76614 quiz: move mod_quiz_preflight_check_form to classes & clean up 2023-01-06 14:35:47 +00:00
Tim Hunt
b3d59e5ad8 MDL-76614 quiz: clean up class access_manager 2023-01-06 14:35:47 +00:00
Tim Hunt
fed4a7fbd4 MDL-76614 quiz: move quiz_access_manager -> mod_quiz\access_manager 2023-01-06 14:35:47 +00:00
Andrew Nicols
411d3730d9 Merge branch 'MDL-74609' of https://github.com/mkassaei/moodle 2022-12-22 12:24:57 +07:00
Mahmoud Kassaei
2074448b34 MDL-74609 Quiz: allow the displayed question numbers to be customised 2022-12-21 12:04:30 +00:00
Meirza
e33194755f MDL-75914 webservice: Added fake URL to avoid debugging output.
Webservice doesn't need to set the page URL. Hence,
any function that requires a page URL will raise debugging output.
The patch fixes it by adding a fake URL for the webservice.
The patch also removed assertDebuggingCalled because it is no longer needed.
2022-12-21 16:30:21 +07:00
Tim Hunt
66c3c378a0 MDL-74923 quiz: tidy the report base classes 2022-12-14 22:38:11 +00:00
Tim Hunt
8cbc6acb17 MDL-74923 quiz: move report base classes to local folder 2022-12-14 22:38:11 +00:00
Tim Hunt
9efec07f77 MDL-74923 quiz: move admin setting classes to mod_quiz\admin namespace 2022-12-13 16:24:58 +00:00
Tim Hunt
48ffa04076 MDL-74923 quiz: tidy qubaids classes
Including removing an almost duplicate task
2022-12-13 16:24:58 +00:00
Tim Hunt
066b7f33d7 MDL-74923 quiz: move qubaids_for_quiz & ..._user to classes folder 2022-12-13 16:24:57 +00:00
Tim Hunt
3e05d77874 MDL-74923 quiz: clean up the display_options class 2022-12-13 16:24:57 +00:00
Tim Hunt
cefbf74d02 MDL-74923 quiz: move mod_quiz_display_options to classes folder 2022-12-13 16:24:57 +00:00
Khoa Nguyen Dang
c093cb3263 MDL-75642 quiz: Delete multiple (random) questions from quiz 2022-10-07 11:00:32 +07:00
Laurent David
025e0297b6 MDL-75210 mod_quiz: fix sequential quiz access
* As a student I should only be able to access the next question or the current question
* The API should not show more than the current question
* Once the quiz is previewed we can see the question in any order (existing behaviour)
* Related to ticket MDL-71728

Co-authored-by: Rajneel Totaram <rjnlfj@yahoo.com>
Co-authored-by: Tim Hunt <t.j.hunt@open.ac.uk>
2022-08-18 08:07:38 +04:00
Juan Leyva
51c9c709a9 MDL-75058 course: Fix support for dates on WebServices 2022-06-27 15:29:36 +02:00
Sara Arjona
bb5831c623 Merge branch 'MDL-74733-master' of https://github.com/sammarshallou/moodle 2022-06-10 13:12:10 +02:00
sam marshall
96e2caeaa2 MDL-74733 core_navigation: Secondary nav in plugins, change namespace
Secondary nav previously had to be in my_plugin\local\views\secondary; this
location continues to work but is deprecated. The new location is
my_plugin\navigation\views\secondary.
2022-06-08 15:40:44 +01:00
Tim Hunt
6c161f3b99 MDL-74760 activity web services: refactor duplicate code 2022-06-07 12:53:34 +01:00
Tim Hunt
aac5b47cea MDL-74041 quiz: use own size for paging the question bank 2022-05-04 11:01:44 +01:00
Tim Hunt
2e1a632302 MDL-74470 quiz: put back random Q description on the Question page
This got lost in the 4.0 question bank work.

We are trying to phase out qtype_random, that is where the old
code and lang strings for describing random questions is, so
OK to add back a call to it. When we get better qbank filtering
we can replace this again.

Note, the asserts in the Behat were copied from my 3.11, checkout,
to really verify we are restoring the previous behaviour.
2022-04-11 19:01:00 +01:00
Tim Hunt
95b0f86ed3 MDL-74470 quiz: fix typos & small bug from MDL-74255.
I think that, because how PHP works, the MDL-74255 bug (lack
of explode) generally does not break anything, which is why
no tests failed. Still. Good to fix.
2022-04-11 12:21:50 +01:00
Tim Hunt
5be2fc1ddc MDL-74255 quiz/question versions: update SQL to work in Oracle 2022-04-08 12:19:53 +01:00
Tim Hunt
a43f56836a MDL-74255 quiz: fix redo and regrade question version handling 2022-04-08 12:19:53 +01:00
Tim Hunt
839cccead4 MDL-74255 quiz: handle draft question status correctly
The main issue to fix is that questions vesions which should not have
been used (that is, hidden or draft versions) were getting offered
as an option and acutally being used.

As part of this I was able to substantially un-tangle
mod_quiz\question\bank\qbank_helper, which previously was
a mass of functions calling other functions in a complicated way.
Hopefully, it is now a bit easer to understand, and perhaps
less buggy.
2022-04-08 12:19:53 +01:00
Tim Hunt
5fff990e25 MDL-74255 quiz: clean up lots of stuff mainly in the tests
This fixes lots of stuff like outdated or incomplete PHPdoc comments
or test heler functions where the arguments don't have their types
declared.

A few more significant fixes, like places were a silly method
was used to get a context which was readily available.
2022-04-08 12:19:52 +01:00
Tim Hunt
37e8faf0ed MDL-74255 quiz: Remove un-needed method question_array_sort 2022-04-08 12:19:52 +01:00
Marc-Alexandre Ghaly
c3ac868bf7 MDL-73763 core : Index fixes for reference tables
This commit will add the index for the question_reference
and the question_set_reference table if its not already
added. This commit will also implement the logic of adding
the question area and component in the joins of the question
reference table in order to make sure any other plugin using
the qbank api does not conflict with each other.
2022-03-24 18:04:47 +11:00
Jun Pataleta
def7df4825 Merge branch 'master_MDL-72890_quiz-regrade' of https://github.com/catalyst/moodle-MDL-70329 2022-03-14 14:19:56 +08:00
Marc-Alexandre Ghaly
3e09319e7a MDL-72890 core_question : Question regrade for question versions
This commit implements a question regrade for the selected
version in the quiz for a slot.

Co-Authored-By: Safat Shahin <safatshahin@catalyst-au.net>
Co-Authored-By: Tim Hunt <tim.hunt@open.ac.uk>
2022-03-04 23:06:50 +11:00
Marc-Alexandre Ghaly
7c016b3451 MDL-71636 core_question : API changes for column_base
This commit implements methods visibility changes to column_base class
and its child classes.
2022-03-02 08:14:48 +00:00
Sujith Haridasan
3458d159e1 MDL-73335 mod_quiz: Add tertiary nav for the quiz module
The tertiary navigation added for quiz module.

- Added tertiary nav buttons for the edit, attempt and view page
- urlselector is added to the overrides page to access user/groups
- The secondary tabs are highlighted when user navigates to
  each page in quiz.
- Updated the behat 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.
2022-02-24 09:26:00 +02:00
Sujith Haridasan
24950e283c Revert "MDL-71915 mod_quiz: Update the tertiary nav"
This reverts commit 6ba821dc01.
2022-02-15 15:58:35 +00:00
Sujith Haridasan
ae377f6940 Revert "MDL-71915 mod_quiz: Render add question when user can edit the quiz"
This reverts commit 29ebc9f153.
2022-02-15 15:54:00 +00:00
Sara Arjona
dc8b6a84a1 MDL-71696 question: Fix Oracle failures with ambiguous colum 2022-02-03 19:28:27 +01:00
Sara Arjona
b841a811be Merge branch 'master_MDL-71696-versioning-integration' of https://github.com/catalyst/moodle-MDL-70329 2022-02-03 13:25:27 +01:00
Safat Shahin
bf55e5a481 MDL-71696 core_question: class autoload changes
This commit implements some class autoloading
fixes to align with core question structure.
2022-02-03 22:22:50 +11:00
Marc-Alexandre Ghaly
b1ad75aef5 MDL-71696 qbank_preview: previewquestion plugin update
This commit implements versioning and associated features
in the previewquestion plugin. There have been some major
changes in the random question and version selection for
questions. This commit made those changes as well as added
some more features in the preview for version selection
and adds more behat coverage.
2022-02-03 22:22:50 +11:00
Safat Shahin
111951d861 MDL-71696 mod_quiz: quiz updates and behat coverage
The versioning changes will require some major changes
in the backup and restore of question bank and its
elements. This change introduces those changes to make
it compatible with the new world of versioning in question
bank. This commit also removes quiz_slots fields and
quiz_slot_tags table.
This commit will also introduce the versioning db
structure and some major changes to the quiz
and quiz attempts for the question, random
question and the view.
This commit implements the behat changes for versioning
in core question and associated locations.
2022-02-03 22:22:44 +11:00
Guillermo Gomez
c6cfca2a08 MDL-71696 core_question: Changes for versioning
This commit adds the changes in questiontype base
to work with new question tables and the new structure in the
databse. Also needed for versioning.
This implementation will also introduct the question status
which allows a question to be in draft and ready status.
I also introduces changes to the base view where it shows
the latest version of the questions. The view of versions
for a question is not implemented in this commit.
This implementation will also introduce changes in the core
qtype plugins to support versioning and the changed
db schema.
2022-02-03 22:22:44 +11:00